You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@zookeeper.apache.org by "anaud (Jira)" <ji...@apache.org> on 2020/09/25 03:14:00 UTC

[jira] [Updated] (ZOOKEEPER-3946) Convergence fails when a follower missed the committedLog synching with the leader if it was an old leader and the leader falls back to send snapshot.

     [ https://issues.apache.org/jira/browse/ZOOKEEPER-3946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

anaud updated ZOOKEEPER-3946:
-----------------------------
    Description: If a follower which is the old leader that saw a transaction by itself tries to sync with the new leader, it is possible that the follower goes for the fifth cases in the syncFollower method of LearnerHandler.java. That is, it is the follower missed the committedLog. The leader may end up sending snapshot. However, the leader does not send TRUNC. Therefore, the transaction only the follower saw remains and gets applied to the in-memory data tree of the follower even after synchronization is complete. 

> Convergence fails when a follower missed the committedLog synching with the leader if it was an old leader and the leader falls back to send snapshot.
> ------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-3946
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3946
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: quorum, server
>    Affects Versions: 3.7.0
>            Reporter: anaud
>            Priority: Major
>
> If a follower which is the old leader that saw a transaction by itself tries to sync with the new leader, it is possible that the follower goes for the fifth cases in the syncFollower method of LearnerHandler.java. That is, it is the follower missed the committedLog. The leader may end up sending snapshot. However, the leader does not send TRUNC. Therefore, the transaction only the follower saw remains and gets applied to the in-memory data tree of the follower even after synchronization is complete. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)