[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2988?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16441278#comment-16441278
 ] 

ASF GitHub Bot commented on ZOOKEEPER-2988:
-------------------------------------------

Github user enixon commented on a diff in the pull request:

    https://github.com/apache/zookeeper/pull/476#discussion_r182175483
  
    --- Diff: 
src/java/main/org/apache/zookeeper/server/quorum/FastLeaderElection.java ---
    @@ -927,10 +927,11 @@ public Vote lookForLeader() throws 
InterruptedException {
                                 tmpTimeOut : maxNotificationInterval);
                         LOG.info("Notification time out: " + notTimeout);
                     } 
    -                else if 
(self.getCurrentAndNextConfigVoters().contains(n.sid)) {
    +                else if 
(self.getCurrentAndNextConfigVoters().contains(n.sid) &&
    --- End diff --
    
    There are five uses of `getCurrentAndNextConfigVoters().contains` in the 
class, seems reasonable to make it a method.


> NPE triggered if server receives a vote for a server id not in their voting 
> view
> --------------------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-2988
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2988
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: leaderElection
>    Affects Versions: 3.5.3, 3.4.11
>            Reporter: Brian Nixon
>            Priority: Minor
>
> We've observed the following behavior in elections when a node is lagging 
> behind the quorum in its view of the ensemble topology.
> - Node A is operating with node B in its voting view, but without view of 
> node C.
> - B votes for C.
> - A then switches its vote to C, but throws a NPE when attempting to connect.
> This causes the QuorumPeer to spin up a Follower only to immediately have it 
> shutdown by the exception.
> Ideally, A would not advertise a vote for a server that it will not follow.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to