[ https://issues.apache.org/jira/browse/ZOOKEEPER-1642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13575048#comment-13575048 ]
Thawan Kooburat commented on ZOOKEEPER-1642: -------------------------------------------- I think we probably want to make sure that ZkDb has the correct data when a peer transition between leader and follower. I think the current implementation will work correctly but not sure if we want to add a unit test to make sure that it behave correctly moving forward. One of the place that I can think of is the committedLog. When a follower get elected as a leader in a new epoch. It will reuse committedLog populated since it was a follower in the old epoch. So we can add a unit test to verify the integrity of the committedLog even though it should behave correctly at the moment. > Leader loading database twice > ----------------------------- > > Key: ZOOKEEPER-1642 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1642 > Project: ZooKeeper > Issue Type: Bug > Reporter: Flavio Junqueira > Fix For: 3.5.0, 3.4.6 > > Attachments: ZOOKEEPER-1642.patch > > > The leader server currently loads the database before running leader election > when trying to figure out the zxid it needs to use for the election and again > when it starts leading. This is problematic for larger databases so we should > remove the redundant load if possible. > The code references are: > # getLastLoggedZxid() in QuorumPeer; > # loadData() in ZooKeeperServer. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira