This problem is discussed here: http://zookeeper-user.578899.n2.nabble.com/Ensure-there-is-one-master-td7579367.html#a7579390.
Maciej On 12/2/13, Neha Narkhede <[email protected]> wrote: >>> At this time there are two masters - old in part B, and new in part A. > > After the network partition, there shouldn't be a leader in part B since it > is a minority and will not be able to form a quorum. > > Thanks, > Neha > > > On Tue, Nov 26, 2013 at 6:34 AM, Maciej Smoleński <[email protected]> > wrote: > >> Hi, >> >> ZooKeeper is an excellent system. The problem with ensuring only one >> master among clients bothers me. >> >> Lets have a look at the situation when network partition happen: there >> is part A (majority), and part B (minority). >> Lets assume that before network partition happened the master was >> connected to part B. >> After the network partition, part A will elect new ZooKeeper leader, >> and there will be new master elected among clients connected to part >> A. >> At this time there are two masters - old in part B, and new in part A. >> The only solution I can think about to this problem, is to ensure that >> the new master is inactive for some time - to ensure that the old >> master in this time will detect that it is not connected to ZooKeeper >> quorum, and will deactivate itself as a master. >> This solution assumes that timers on these machines work correctly. >> Is it possible to ensure only one master using ZooKeeper without >> timing assumptions ? >> >> Thanks, >> Maciej >> >
