[Gluster-devel] Feature: Automagic split-brain resolution for v3.6.x
Richard Wareing
rwareing at fb.com
Fri Sep 11 02:12:14 UTC 2015
Ok, one more patch and then I'm taking a break from porting for a bit :). This one we've been using for a few years (in some form or another) and really helped allow folks embrace GlusterFS; at our scale workflows cannot be interrupted for nearly any reason...using heuristics to resolve split-brain is almost always preferable to human intervention.
Here's the patch summary from the diff; bugzilla bug @ https://bugzilla.redhat.com/show_bug.cgi?id=1262161 :
=====
Summary:
- Split-brain sucks, and generally they are trivial to resolve based on
some very basic heuristics: time, size or majority. This patch
introduces cluster.favorite-child-by-[ctime|mtime|size|majority]
options which do just this.
- It's important to note that although AFR2 has some un-split
capabilities, they don't really handle the more common case (by our
experience) where the change logs are truely in conflict. This patch
does handle these cases.
- Added A/B tests for the features such that they verify WITHOUT the
feature enabled the file is indeed split-brained, then again test with the
feature enabled to show it is readable and the correct file was
chosen. This should fix the problem where in v3.6 we falsely believed
that split-brain resolution was implemented when in fact it was not.
====
Patches cleanly to release-3.6 branch, and with a little massaging this patch can be made to work with v3.7.x .
Enjoy!
Richard
More information about the Gluster-devel
mailing list