Keli Wang created ZOOKEEPER-3830: ------------------------------------ Summary: After add a new node, zookeeper cluster won't commit any proposal if this new node is leader Key: ZOOKEEPER-3830 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3830 Project: ZooKeeper Issue Type: Bug Environment: Zookeeper 3.5.8
JDK 1.8 Reporter: Keli Wang Attachments: reproduce-zkclusters.tar.gz I have a zookeeper cluster with 3 nodes, node3 is the leader of the cluster. {code:java} server.1=node1 server.2=node2 server.3=node3 # current leader{code} With dynamic reconfiguration disabled, I scale this cluster to 4 nodes with 2 steps: # Start node4 with new config, now node4 is a follower. # Modify config and restart node1, node2 and node3 one by one. The new cluster config is: {code:java} server.1=node1 server.2=node2 server.3=node3 server.4=node4 # current leader {code} After restart, node4 is the leader of this cluster. But I cannot connect to this cluster using zkCli now. If I restart node4, node3 will be the new leader, and now I can connect to cluster using zkCli again. After some digging, I find node4's Leader#allowedToCommit field is false, so this cluster won't commit any new proposals. I have attached a zookeeper cluster to reproduce this problem. The cluster in the attachment can run in one single machine. -- This message was sent by Atlassian Jira (v8.3.4#803005)