Skip to content

Commit

Permalink
Avoid race inserting new data in compaction_history during truncation…
Browse files Browse the repository at this point in the history
… in SystemKeyspaceMigrator41Test.testMigrateCompactionHistory

Patch by marcuse; reviewed by Sam Tunnicliffe for CASSANDRA-19098
  • Loading branch information
krummas committed Dec 12, 2023
1 parent c069a0f commit 901786e
Showing 1 changed file with 8 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

import java.net.InetAddress;
import java.nio.ByteBuffer;
import java.util.Collections;
import java.util.Date;
import java.util.Map;
import java.util.UUID;
Expand All @@ -32,6 +33,7 @@
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.cql3.CQLTester;
import org.apache.cassandra.cql3.UntypedResultSet;
import org.apache.cassandra.db.compaction.CompactionManager;
import org.apache.cassandra.db.marshal.BytesType;
import org.apache.cassandra.db.marshal.Int32Type;
import org.apache.cassandra.db.marshal.LongType;
Expand Down Expand Up @@ -311,10 +313,15 @@ public void testMigrateCompactionHistory() throws Throwable
assertEquals(ImmutableMap.of(), row.getMap("compaction_properties", UTF8Type.instance, UTF8Type.instance));
}
assertEquals(1, rowCount);
Keyspace.all().forEach(ks -> {
ks.getColumnFamilyStores().forEach(cfs -> {
cfs.disableAutoCompaction();
CompactionManager.instance.waitForCessation(Collections.singleton(cfs), (sstable) -> true);
});
});

//Test nulls/missing don't prevent the row from propagating
execute(String.format("TRUNCATE %s", table));

execute(String.format("INSERT INTO %s (id) VALUES (?)", table), compactionId);
SystemKeyspaceMigrator41.migrateCompactionHistory();

Expand Down

0 comments on commit 901786e

Please sign in to comment.