Hi,

Not to be pedantic, but you are describing the quorum, not a split brain.  The quorum prevents split brain.

A split brain is when nodes are split, usually due to a network partition, in such a way that both sides of the partition believe that they are the master.  Each writes conflicting transactions into the diverged sides, and when the sides converge, if the system is not partition tolerant and self healing through a conflict resolution mechanism, chaos will ensue since both sides now have different pictures of the data.

As will suggested, the weighted quorum mechanism prevents this from happening.  If you have 5 nodes, at least 3 nodes (a majority) must be able to communicate.  If no partition contains 3 nodes, no nodes will be able to accept changes, or even answer queries. 

--Justin

On Sun, Jun 14, 2015 at 9:34 PM, Will Fong <will.fong@mariadb.com> wrote:
Hi,

On Sat, Jun 13, 2015 at 7:32 AM, Daniel Black
<daniel.black@openquery.com.au> wrote:
>> 1. A cluster should have an odd number of nodes to avoid brain split.
>
> Split brain is avoided with 3+ nodes. You won't get split brain with even nodes as the quorum is 1/2 + 1 nodes.
> i.e. It does mean 1/2 the nodes can't form a quorum.

Just to add a little more to this, "split brain" is when a node (or
group of nodes) thinks to itself "was it me or those guys, who left?
There's not enough people to concur with". This normally happens with
networking problems between two datacenters or if the database server
crashes.

So in your situation, two nodes running while the third one is being
upgraded is fine. However, during the time the third node is "down",
you will get a split brain scenario *if* one of the online nodes die.

The larger case of split brain is when your networking layer is more
prone to have problems. It's unlikely that the connection between
nodes on the same switch will lose connectivity, but if the nodes were
across regions, your chances of some transient connection issues goes
up a lot.


-will


--
Will Fong, Support Engineer
MariaDB Corporation

_______________________________________________
Mailing list: https://launchpad.net/~maria-discuss
Post to     : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp