[ https://issues.apache.org/jira/browse/ZOOKEEPER-1264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13142211#comment-13142211 ]
Camille Fournier commented on ZOOKEEPER-1264: --------------------------------------------- Because when the follower writes a new log file without writing a snapshot with the old transactions, on restart the ZK thinks it has the transactions up to the zxid in the log file. The fact that these transactions were never written to a log or snapshot by the follower is not captured. We got a NEWLEADER and took a snapshot, then got a bunch of txns that went directly to our data tree, then got UPTODATE, then some other new transactions that caused the creation of a brand new log file. The intermediate transactions between NEWLEADER and UPTODATE are never written to a persistent store on the follower unless it manages to stay alive long enough to do another snapshot. > FollowerResyncConcurrencyTest failing intermittently > ---------------------------------------------------- > > Key: ZOOKEEPER-1264 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1264 > Project: ZooKeeper > Issue Type: Bug > Components: tests > Affects Versions: 3.3.3, 3.4.0, 3.5.0 > Reporter: Patrick Hunt > Assignee: Camille Fournier > Priority: Blocker > Fix For: 3.3.4, 3.4.0, 3.5.0 > > Attachments: ZOOKEEPER-1264.patch, ZOOKEEPER-1264.patch, > ZOOKEEPER-1264_branch33.patch, ZOOKEEPER-1264_branch34.patch, > ZOOKEEPER-1264unittest.patch, ZOOKEEPER-1264unittest.patch, > followerresyncfailure_log.txt.gz, logs.zip, tmp.zip > > > The FollowerResyncConcurrencyTest test is failing intermittently. > saw the following on 3.4: > {noformat} > junit.framework.AssertionFailedError: Should have same number of > ephemerals in both followers expected:<11741> but was:<14001> > at > org.apache.zookeeper.test.FollowerResyncConcurrencyTest.verifyState(FollowerResyncConcurrencyTest.java:400) > at > org.apache.zookeeper.test.FollowerResyncConcurrencyTest.testResyncBySnapThenDiffAfterFollowerCrashes(FollowerResyncConcurrencyTest.java:196) > at > org.apache.zookeeper.JUnit4ZKTestRunner$LoggedInvokeMethod.evaluate(JUnit4ZKTestRunner.java:52) > {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira