[Gluster-devel] split brain: how should it be cured?
anand.avati at gmail.com
Thu Jun 21 05:00:08 UTC 2012
On Wed, Jun 20, 2012 at 2:50 AM, Pranith Kumar Karampuri <
pkarampu at redhat.com> wrote:
> They are not in split-brain, I responded to your previous mail just now
> giving examples of split-brain.
On the contrary, "Yesterday" example is not a split brain, but "today"
example is a split brain. Though I'm not sure what steps you performed
before you landed in that situation.
> What should be the behavior when there is metadata split-brain?.
While we are doing mostly the right thing in terms of detecting a syntactic
conflict in meta data (and calling it "split brain"), we are doing nothing
at all in terms of merging/resolving conflicts. Unlike data, there are more
interesting possibilities with POSIX metadata w.r.t semantic
merge/resolution. The entire problem boils down to basically two attributes
- permission and ownership. Rest of the attributes are either
non-modifiable as "meta data" (st_blocks, st_ctime etc.) or we don't care
(e.g st_atime). We can provide a few merge policy options if we detect meta
data conflict, like - "apply the most conservative permission", "apply most
conservative permission ignoring the execute bit", "change ownership to
owner of parent directory", "change ownership to root".
At the very least we need to support a very basic semantic merge - if
copies are accidentally identical, consider the conflict resolved. And this
needs to be done for both meta data and data (and possibly extended to GFID
mismatch as well)
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Gluster-devel