You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Joshua McKenzie (JIRA)" <ji...@apache.org> on 2015/05/29 19:45:17 UTC
[jira] [Commented] (CASSANDRA-9511)
ColumnFamilyStoreTest.testSliceByNamesCommandOldMetadata fails on trunk
[ https://issues.apache.org/jira/browse/CASSANDRA-9511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14565125#comment-14565125 ]
Joshua McKenzie commented on CASSANDRA-9511:
--------------------------------------------
Duplicate of CASSANDRA-9501. I think the nodetool refresh vs. MemtableWriter case is prevented by [this code|https://github.com/apache/cassandra/blob/cassandra-2.2/src/java/org/apache/cassandra/db/ColumnFamilyStore.java#L730].
The problem on the unit test was a race between the clearUnsafe() calls and the subsequent loadNewSSTables which shouldn't be a problem in production as clearUnsafe isn't used outside of tests.
> ColumnFamilyStoreTest.testSliceByNamesCommandOldMetadata fails on trunk
> -----------------------------------------------------------------------
>
> Key: CASSANDRA-9511
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9511
> Project: Cassandra
> Issue Type: Test
> Reporter: Ariel Weisberg
> Assignee: Ariel Weisberg
>
> See http://cassci.datastax.com/view/trunk/job/trunk_testall/121/testReport/org.apache.cassandra.db/ColumnFamilyStoreTest/testSliceByNamesCommandOldMetadata/
> {noformat}
> junit.framework.AssertionFailedError
> at org.apache.cassandra.io.util.FileUtils.renameWithConfirm(FileUtils.java:171)
> at org.apache.cassandra.io.util.FileUtils.renameWithConfirm(FileUtils.java:166)
> at org.apache.cassandra.io.sstable.format.SSTableWriter.rename(SSTableWriter.java:266)
> at org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:766)
> at org.apache.cassandra.db.ColumnFamilyStoreTest.testSliceByNamesCommandOldMetadata(ColumnFamilyStoreTest.java:1125)
> {noformat}
> I changed the logging a bit to track down the failed rename
> {noformat}
> DEBUG [MemtableFlushWriter:1] 2015-05-29 11:50:13,600 Renaming build/test/cassandra/data:0/system/compactions_in_progress-55080ab05d9c388690a4acb25fe1f77b/tmp-la-4-big-TOC.txt to build /test/cassandra/data:0/system/compactions_in_progress-55080ab05d9c388690a4acb25fe1f77b/la-4-big-TOC.txt
> DEBUG [main] 2015-05-29 11:50:13,612 Failed renaming build/test/cassandra/data:0/ColumnFamilyStoreTest1/Standard1-62503c50061a11e5a1d32fd3bb27a264/la-4-big-TOC.txt to build/test/cassan dra/data:0/ColumnFamilyStoreTest1/Standard1-62503c50061a11e5a1d32fd3bb27a264/la-11-big-TOC.txt
> {noformat}
> Looks like MemtaleFlushWriter is racing with the unit test thread to rename the file. This may be an actual bug since a similar race could occur when nodetool invokes CFS.loadNewSSTables.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)