This is an automated email from the ASF dual-hosted git repository.
samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git
The following commit(s) were added to refs/heads/trunk by this push:
new 53cdefb1de Enabling single sstable uplevel by default
53cdefb1de is described below
commit 53cdefb1de469c29a3292919c6a1782b092c1fae
Author: nvharikrishna <[email protected]>
AuthorDate: Tue May 9 21:42:09 2023 +0530
Enabling single sstable uplevel by default
Patch by Venkata Harikrishna Nukala; reviewed by Marcus Eriksson and Sam
Tunnicliffe for CASSANDRA-18509
---
.../db/compaction/LeveledCompactionStrategy.java | 2 +-
.../cassandra/db/compaction/SingleSSTableLCSTask.java | 5 +++++
.../cassandra/db/compaction/CompactionsCQLTest.java | 6 +++---
.../db/compaction/LeveledCompactionStrategyTest.java | 17 ++++++++++++++---
4 files changed, 23 insertions(+), 7 deletions(-)
diff --git
a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
index fbf2894187..1509aa2e03 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
@@ -65,7 +65,7 @@ public class LeveledCompactionStrategy extends
AbstractCompactionStrategy
super(cfs, options);
int configuredMaxSSTableSize = DEFAULT_MAX_SSTABLE_SIZE_MIB;
int configuredLevelFanoutSize = DEFAULT_LEVEL_FANOUT_SIZE;
- boolean configuredSingleSSTableUplevel = false;
+ boolean configuredSingleSSTableUplevel = true;
SizeTieredCompactionStrategyOptions localOptions = new
SizeTieredCompactionStrategyOptions(options);
if (options != null)
{
diff --git
a/src/java/org/apache/cassandra/db/compaction/SingleSSTableLCSTask.java
b/src/java/org/apache/cassandra/db/compaction/SingleSSTableLCSTask.java
index 2d9768924c..7a80451e2d 100644
--- a/src/java/org/apache/cassandra/db/compaction/SingleSSTableLCSTask.java
+++ b/src/java/org/apache/cassandra/db/compaction/SingleSSTableLCSTask.java
@@ -45,6 +45,11 @@ public class SingleSSTableLCSTask extends
AbstractCompactionTask
this.level = level;
}
+ protected int getLevel()
+ {
+ return level;
+ }
+
@Override
protected void executeInternal(ActiveCompactionsTracker activeCompactions)
{
diff --git
a/test/unit/org/apache/cassandra/db/compaction/CompactionsCQLTest.java
b/test/unit/org/apache/cassandra/db/compaction/CompactionsCQLTest.java
index 34b91e1518..b18a20ec98 100644
--- a/test/unit/org/apache/cassandra/db/compaction/CompactionsCQLTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/CompactionsCQLTest.java
@@ -542,10 +542,10 @@ public class CompactionsCQLTest extends CQLTester
getCurrentColumnFamilyStore().forceBlockingFlush(ColumnFamilyStore.FlushReason.UNIT_TESTS);
LeveledCompactionStrategy lcs = (LeveledCompactionStrategy)
getCurrentColumnFamilyStore().getCompactionStrategyManager().getUnrepairedUnsafe().first();
- LeveledCompactionTask lcsTask;
+ AbstractCompactionTask lcsTask;
while (true)
{
- lcsTask = (LeveledCompactionTask)
Iterables.getOnlyElement(lcs.getNextBackgroundTasks(0), null);
+ lcsTask = Iterables.getOnlyElement(lcs.getNextBackgroundTasks(0),
null);
if (lcsTask != null)
{
lcsTask.execute(CompactionManager.instance.active);
@@ -591,7 +591,7 @@ public class CompactionsCQLTest extends CQLTester
// ignored
}
- lcsTask = (LeveledCompactionTask)
Iterables.getOnlyElement(lcs.getNextBackgroundTasks(0), null);
+ lcsTask = Iterables.getOnlyElement(lcs.getNextBackgroundTasks(0),
null);
try
{
assertNotNull(lcsTask);
diff --git
a/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
b/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
index 0a339b5b2d..00bb8b25ff 100644
---
a/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
+++
b/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
@@ -599,9 +599,20 @@ public class LeveledCompactionStrategyTest
{
try
{
- assertTrue(task instanceof LeveledCompactionTask);
- LeveledCompactionTask lcsTask =
(LeveledCompactionTask) task;
- level = Math.max(level, lcsTask.getLevel());
+ if (task instanceof LeveledCompactionTask)
+ {
+ LeveledCompactionTask lcsTask =
(LeveledCompactionTask) task;
+ level = Math.max(level, lcsTask.getLevel());
+ }
+ else if (task instanceof SingleSSTableLCSTask)
+ {
+ SingleSSTableLCSTask singleSSTableLCSTask =
(SingleSSTableLCSTask) task;
+ level = Math.max(level,
singleSSTableLCSTask.getLevel());
+ }
+ else
+ {
+ Assert.fail("Got unexpected task of type " +
task.getClass().getCanonicalName());
+ }
}
finally
{
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]