In ticket [#64], we introduced a simple split-brain prevention mechanism that will guarantee that there is at most one active system controller in the cluster. However, it does not guarantee that the active system controller will reside in the largest network partition. The attached document describes a way to select the largest partition using what we call passive locks.
Tickets: #2918
Tickets: #2989
Tickets: #2995
Tickets: #64
Wiki: ChangeLog-5.18.04
Wiki: NEWS-5.18.04
A step 0 needs to be added to 'Passive Lock Implementation', before trying to obtain a lock.
0) Check for an existing takeover request. If exists, wait until it expires (in a reasonable time).
This is needed in case the old active controller that is being taken over, reboots so quickly (after it self-fences, if remote fencing is not available) that it is able to retain/obtain the lock before the new controller is able to lock it itself.
Last edit: Gary Lee 2018-04-09
Develop:
commit d242261b4da485768d11e7a558a9ce3b69097a11
Author: Gary Lee gary.lee@dektech.com.au
Date: Tue Apr 17 19:58:23 2018 +1000
commit 6ba118a9832f0c6667b52aeda979632d435b542c
Author: Gary Lee gary.lee@dektech.com.au
Date: Tue Apr 17 19:58:23 2018 +1000
commit 713f5acff36ee10883dacb9222b9f00c3dee8d10
Author: Gary Lee gary.lee@dektech.com.au
Date: Tue Apr 17 19:58:23 2018 +1000
commit 3b8bb17ccc996d77c1dee61b8295e1454090437f
Author: Gary Lee gary.lee@dektech.com.au
Date: Tue Apr 17 19:58:23 2018 +1000
commit 1efef47b243a6b6863d40e7d5ac98dd3aea4e996
Author: Gary Lee gary.lee@dektech.com.au
Date: Tue Apr 17 19:58:23 2018 +1000
commit 867955ca099e9fc7e226adb7b9f465eb9fa680a4
Author: Gary Lee gary.lee@dektech.com.au
Date: Tue Apr 17 19:58:23 2018 +1000