[
https://issues.apache.org/jira/browse/CASSANDRA-12282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15399098#comment-15399098
]
Stefania commented on CASSANDRA-12282:
--------------------------------------
When this test fails it's because there is an unexpected sstable, and this is
caused by a flush operation that is triggered by a schema change. The clean-up
tasks in CQLTester.afterTest() are causing this schema change, and they are
currently asynchronous:
{code}
DEBUG [OptionalTasks:1] 2016-07-29 09:52:30,992
java.lang.Thread.getStackTrace(Thread.java:1552)
org.apache.cassandra.db.ColumnFamilyStore.getCurrentStackTrace(ColumnFamilyStore.java:866)
org.apache.cassandra.db.ColumnFamilyStore.logFlush(ColumnFamilyStore.java:896)
org.apache.cassandra.db.ColumnFamilyStore.switchMemtable(ColumnFamilyStore.java:854)
org.apache.cassandra.db.ColumnFamilyStore.switchMemtableIfCurrent(ColumnFamilyStore.java:838)
org.apache.cassandra.db.ColumnFamilyStore.forceFlush(ColumnFamilyStore.java:921)
org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.flushDataFrom(AbstractCommitLogSegmentManager.java:452)
org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.forceRecycleAll(AbstractCommitLogSegmentManager.java:314)
org.apache.cassandra.db.commitlog.CommitLog.forceRecycleAllSegments(CommitLog.java:220)
org.apache.cassandra.config.Schema.dropTable(Schema.java:692)
org.apache.cassandra.schema.SchemaKeyspace.lambda$updateKeyspace$376(SchemaKeyspace.java:1343)
org.apache.cassandra.schema.SchemaKeyspace$$Lambda$162/1250499735.accept(Unknown
Source)
java.util.HashMap$Values.forEach(HashMap.java:972)
java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1080)
org.apache.cassandra.schema.SchemaKeyspace.updateKeyspace(SchemaKeyspace.java:1343)
org.apache.cassandra.schema.SchemaKeyspace.mergeSchema(SchemaKeyspace.java:1313)
org.apache.cassandra.service.MigrationManager.announce(MigrationManager.java:512)
org.apache.cassandra.service.MigrationManager.announceColumnFamilyDrop(MigrationManager.java:466)
org.apache.cassandra.cql3.statements.DropTableStatement.announceMigration(DropTableStatement.java:93)
org.apache.cassandra.cql3.statements.SchemaAlteringStatement.executeInternal(SchemaAlteringStatement.java:120)
org.apache.cassandra.cql3.CQLTester.schemaChange(CQLTester.java:669)
org.apache.cassandra.cql3.CQLTester$2.run(CQLTester.java:294)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
java.lang.Thread.run(Thread.java:745)
{code}
Note the trace at CQLTester.java line 294.
The cleanup operations need to be asynchronous to reduce the runtime of CQL
tests, see CASSANDRA-7327. However, this specific test doesn't need to drop all
previous tables every time a single test is run. So I'm thinking of adding an
opt-out mechanism to the cleanup done after each test, in which case we would
only clean up after the entire test suite has executed.
> SSTablesIteratedTest.testDeletionOnIndexedSSTableASC-compression failure
> ------------------------------------------------------------------------
>
> Key: CASSANDRA-12282
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12282
> Project: Cassandra
> Issue Type: Test
> Reporter: Joshua McKenzie
> Assignee: Stefania
> Labels: unittest
>
> Error Message
> expected:<3> but was:<4>
> Stacktrace
> junit.framework.AssertionFailedError: expected:<3> but was:<4>
> at
> org.apache.cassandra.cql3.validation.miscellaneous.SSTablesIteratedTest.executeAndCheck(SSTablesIteratedTest.java:45)
> at
> org.apache.cassandra.cql3.validation.miscellaneous.SSTablesIteratedTest.testDeletionOnIndexedSSTableASC(SSTablesIteratedTest.java:348)
> at
> org.apache.cassandra.cql3.validation.miscellaneous.SSTablesIteratedTest.testDeletionOnIndexedSSTableASC(SSTablesIteratedTest.java:312)
> [Failure|http://cassci.datastax.com/job/cassandra-3.9_testall/lastCompletedBuild/testReport/org.apache.cassandra.cql3.validation.miscellaneous/SSTablesIteratedTest/testDeletionOnIndexedSSTableASC_compression/]
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)