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)