[ https://issues.apache.org/jira/browse/CURATOR-696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17845227#comment-17845227 ]
Zili Chen commented on CURATOR-696: ----------------------------------- Sorry I miss this issue at the first place. Here is a draft fix - https://github.com/apache/curator/pull/500 Welcome to try it out or provide reproduce we can add to regression tests. > Double leader for LeaderLatch > ----------------------------- > > Key: CURATOR-696 > URL: https://issues.apache.org/jira/browse/CURATOR-696 > Project: Apache Curator > Issue Type: Bug > Affects Versions: 5.4.0, 5.5.0 > Reporter: lurna > Assignee: Enrico Olivelli > Priority: Critical > > When I use the LeaderLatch to select leader, there is a double-leader > phenomenon. > The timeline is as follows: > 1.A client connected and set its leader status to true > 2.zk offline until the session with the A client expires > 3.zk online,A client Reconnected and set its leader status to true with old > path > 4.zk delete old path(A client)because of expires > 5.A client cannot perceive that its node has been deleted,continues to > believe that it is the leader > 6.B client connected,due to zk's node being empty, set its leader status to > true > 7.now A client and B client are the leader at the same time > > It seems that due to CURATOR-644 and CURATOR-645 -- This message was sent by Atlassian Jira (v8.20.10#820010)