I have a scenario where ZooKeeper ensemble consists of five physical servers [A, B, C, D, E], assume C is the leader and all ZK servers have seen the state [zxid=1, zxid=2, zxid=3, and zxid=4].
Now the leader broadcasts (send a proposal with zxid=5) to the followers. Just after the leader sends proposal (before the proposal is committed), new server (F) joins the cluster and it syncs with the leader (leader sends DIFF to the F), so in this case, the server F will have state [zxid=1, zxid=2, zxid=3, and zxid=4], but F has just missed the proposal zxid. Now assume the proposal zxid is committed and delivered, resulting in servers [A, B, C, D, E] have the state [zxid=1, zxid=2, zxid=3, zxid=4, and zxid=5], whereas server F has only [zxid=1, zxid=2, zxid=3, and zxid=4] not including zxid=5. This will end up the Zookeeper with inconsistent state at least for a short time. Does this scenario correct (may happen)? If not how does Zookeeper deal with such scenario? Thank you Ibrahim -- View this message in context: http://zookeeper-user.578899.n2.nabble.com/New-join-server-while-leader-just-sends-proposal-tp7580714.html Sent from the zookeeper-user mailing list archive at Nabble.com.
