Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-1886

Exception in Follower.followLeader() where Leader is still running, can make that follower hang in LeaderElection

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • server
    • None

    Description

      SocketTimeoutException in Follower#followLeader() where the leader is successfully running can make this follower not able to rejoin the quorum.

      Analysis:
      1. SocketTimeoutException in below code, will make follower to stop following (Not process shutdown) and try to participate in leader election again.

                      while (self.isRunning()) {
                          readPacket(qp);
                          processPacket(qp);
                      }

      2. At the time of leader election FastLeaderElection#logicalclock will be incremented at only follower side, and this is more than electionEpoch of the leader.

      3. Notification from the Leader will get ignored and from this follower notifications will be continously sent and again ignored.

      Attachments

        Activity

          People

            Unassigned Unassigned
            vinayakumarb Vinayakumar B
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: