[
https://issues.apache.org/jira/browse/ZOOKEEPER-107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12706697#action_12706697
]
Raghu S commented on ZOOKEEPER-107:
-----------------------------------
I think there are some corner cases that may make the leader election
impossible during a node addition. Say the current config is A,B,C and the new
config is A,B,C,D. When the leader is trying to commit the new configuration,
the power goes out and comes back on when only A and B have logged the new
configuration. Peer count in <A,B,C,D> = <4,4,3,3> now. An election is not
possible if C is down because A and B think the majority is 3 peers and D can't
participate in the election since it hasn't joined the cluster yet.
It sounds like some out of band communication between an existing peer and a
new peer is needed to make this thing work. If a peer restarts or notices
quorum loss and if the last logged update is a node addition, the peer should
try to contact the newly added server so that it can push it's log to the new
peer (if the new peer doesn't already have an up to date log) and ask the new
peer to restart. Until A or B do that in the above case, an election may not be
possible.
> Allow dynamic changes to server cluster membership
> --------------------------------------------------
>
> Key: ZOOKEEPER-107
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-107
> Project: Zookeeper
> Issue Type: Improvement
> Components: server
> Reporter: Patrick Hunt
>
> Currently cluster membership is statically defined, adding/removing hosts
> to/from the server cluster dynamically needs to be supported.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.