Github user colorant commented on the pull request: https://github.com/apache/incubator-spark/pull/611#discussion_r9852483 Actually, I thnk the LeaderLatch already synchronized on it's setLeadership method. And it will call isLeader/notLeader with sameThreadExecutor by execute method. it seems to me this will lead to an immediately call upon these two method. So I am not sure why curator's API doc mentioned that the hasLeaderShip could change during these two methods call. And, anyway, the is/notLeader() should be called in sequence, So I think by just return here and give the last one a real update chance is probably enough.
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. To do so, please top-post your response. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---