[ https://issues.apache.org/jira/browse/CASSANDRA-7084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benedict updated CASSANDRA-7084: -------------------------------- Attachment: 7084.txt This can only be a race condition on the resetting of the CL and one of the tests writing to a CF that is flushing a CLS. I haven't investigated thoroughly to pinpoint the exact cause because it's not an actual application bug - I've simply introduced two separate measures to avoid the problem, and it fixes the issue on my box. Firstly, I force the tests to run in order, so that work from one of the real tests does not cause the initial recover to be run whilst flush work is still outstanding; and secondly I introduce a sleep and stronger guard for testing CL work is still outstanding during resetUnsafe. This is still not perfectly safe as we could have something on the memtable flusher for longer than this that then sneaks through, but it should be sufficient for all practical intents. > o.a.c.db.RecoveryManagerTest.testNothingToRecover Unit Test Flaps in 2.0 > ------------------------------------------------------------------------ > > Key: CASSANDRA-7084 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7084 > Project: Cassandra > Issue Type: Test > Components: Tests > Reporter: Michael Shuler > Assignee: Benedict > Priority: Minor > Fix For: 2.0.8 > > Attachments: 7084.txt > > > Example: > http://cassci.datastax.com/job/cassandra-2.0_utest/326/ > (this test appears to pass consistently in 1.2 and 2.1 with a quick glance - > will test out the other branches more thoroughly and bisect) > {noformat} > REGRESSION: org.apache.cassandra.db.RecoveryManagerTest.testNothingToRecover > Error Message: > java.io.FileNotFoundException: > /var/lib/jenkins/jobs/cassandra-2.0_test/workspace/build/test/cassandra/commitlog/CommitLog-3-1398354429966.log > (No such file or directory) > Stack Trace: > java.lang.RuntimeException: java.io.FileNotFoundException: > /var/lib/jenkins/jobs/cassandra-2.0_test/workspace/build/test/cassandra/commitlog/CommitLog-3-1398354429966.log > (No such file or directory) > at > org.apache.cassandra.io.util.RandomAccessReader.open(RandomAccessReader.java:102) > at > org.apache.cassandra.io.util.RandomAccessReader.open(RandomAccessReader.java:90) > at > org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:186) > at > org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:95) > at > org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:151) > at > org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:131) > at > org.apache.cassandra.db.RecoveryManagerTest.testNothingToRecover(RecoveryManagerTest.java:42) > Caused by: java.io.FileNotFoundException: > /var/lib/jenkins/jobs/cassandra-2.0_test/workspace/build/test/cassandra/commitlog/CommitLog-3-1398354429966.log > (No such file or directory) > at java.io.RandomAccessFile.open(Native Method) > at java.io.RandomAccessFile.<init>(RandomAccessFile.java:241) > at > org.apache.cassandra.io.util.RandomAccessReader.<init>(RandomAccessReader.java:58) > at > org.apache.cassandra.io.util.RandomAccessReader.open(RandomAccessReader.java:98) > {noformat} -- This message was sent by Atlassian JIRA (v6.2#6252)