Re: split brain: how should it be cured?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Raised the following bug for tracking this issue:
https://bugzilla.redhat.com/show_bug.cgi?id=834172

Pranith
----- Original Message -----
From: "Anand Avati" <anand.avati@xxxxxxxxx>
To: "Pranith Kumar Karampuri" <pkarampu@xxxxxxxxxx>
Cc: "Emmanuel Dreyfus" <manu@xxxxxxxxxx>, "Anand Avati" <aavati@xxxxxxxxxx>, gluster-devel@xxxxxxxxxx
Sent: Thursday, June 21, 2012 10:30:08 AM
Subject: Re: split brain: how should it be cured?




On Wed, Jun 20, 2012 at 2:50 AM, Pranith Kumar Karampuri < pkarampu@xxxxxxxxxx > 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. 




Avati, 
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) 


Avati 



[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux