Ariel Weisberg created CASSANDRA-9377:
-----------------------------------------

             Summary: Untested commit log code found via code coverage
                 Key: CASSANDRA-9377
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9377
             Project: Cassandra
          Issue Type: Test
            Reporter: Ariel Weisberg
         Attachments: jacoco.tgz

It took some doing but I was finally able to extract coverage for just the unit 
tests that test the commit log. Attached is the jacoco output as well as the 
build.xml I used to get test-compression and test to run just the commit log 
tests.

This includes
{noformat}
CommitLogTest
CommitLogFailurePolicyTest
RecoveryManagerTest
RecoveryManager2Test
RecoveryManager3Test
CommitLogStressTest
{noformat}
All tests were run with and without test-compression.

Coverage is pretty good for some things with the missing coverage being 
exceptional paths for things like files that aren't doing anything exceptional 
in the tests.

ReplayPosition implements equals and hashCode but has no coverage.
CommitLogSegment.waitForFinalSync has no coverage.

CommitLogDescriptor.fromFileName and fromHeader. CommitLogDescriptor implements 
several equals methods that are not fully tested and also doesn't implement 
hashCode to match the equality changes.

CommitLog does not cover handleCommitError, nor forceRecyle*

CommitLogReplayer is not well off. Not worth enumerating the issues just a lot 
of error handling that is untested.

CommitLogArchiver is in poor shape with no coverage for maybeRestoreArchive().

CommitLogSegmentManager has a few important looking functions with 0 coverage.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to