You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by pa...@apache.org on 2017/04/06 13:17:20 UTC
cassandra git commit: Disable compaction during PendingRepairTests
Repository: cassandra
Updated Branches:
refs/heads/trunk 4d15f2d06 -> 30820eacb
Disable compaction during PendingRepairTests
Patch by Paulo Motta; Reviewed by Blake Eggleston for CASSANDRA-13224
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/30820eac
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/30820eac
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/30820eac
Branch: refs/heads/trunk
Commit: 30820eacb9c565d06260031260910f020e16e83d
Parents: 4d15f2d
Author: Paulo Motta <pa...@gmail.com>
Authored: Tue Apr 4 12:09:16 2017 -0300
Committer: Paulo Motta <pa...@apache.org>
Committed: Thu Apr 6 10:16:54 2017 -0300
----------------------------------------------------------------------
.../compaction/AbstractPendingRepairTest.java | 1 +
...pactionStrategyManagerPendingRepairTest.java | 2 +
.../db/compaction/PendingRepairManagerTest.java | 44 ++++++++++++++++----
3 files changed, 40 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/30820eac/test/unit/org/apache/cassandra/db/compaction/AbstractPendingRepairTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/AbstractPendingRepairTest.java b/test/unit/org/apache/cassandra/db/compaction/AbstractPendingRepairTest.java
index 75f555d..0baad3b 100644
--- a/test/unit/org/apache/cassandra/db/compaction/AbstractPendingRepairTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/AbstractPendingRepairTest.java
@@ -88,6 +88,7 @@ public class AbstractPendingRepairTest extends AbstractRepairTest
cfs = Schema.instance.getColumnFamilyStoreInstance(cfm.id);
csm = cfs.getCompactionStrategyManager();
nextSSTableKey = 0;
+ cfs.disableAutoCompaction();
}
/**
http://git-wip-us.apache.org/repos/asf/cassandra/blob/30820eac/test/unit/org/apache/cassandra/db/compaction/CompactionStrategyManagerPendingRepairTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/CompactionStrategyManagerPendingRepairTest.java b/test/unit/org/apache/cassandra/db/compaction/CompactionStrategyManagerPendingRepairTest.java
index 27bff20..0b27f73 100644
--- a/test/unit/org/apache/cassandra/db/compaction/CompactionStrategyManagerPendingRepairTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/CompactionStrategyManagerPendingRepairTest.java
@@ -235,6 +235,7 @@ public class CompactionStrategyManagerPendingRepairTest extends AbstractPendingR
Assert.assertTrue(sstable.isPendingRepair());
Assert.assertFalse(sstable.isRepaired());
+ cfs.getCompactionStrategyManager().enable(); // enable compaction to fetch next background task
AbstractCompactionTask compactionTask = csm.getNextBackgroundTask(FBUtilities.nowInSeconds());
Assert.assertNotNull(compactionTask);
Assert.assertSame(PendingRepairManager.RepairFinishedCompactionTask.class, compactionTask.getClass());
@@ -272,6 +273,7 @@ public class CompactionStrategyManagerPendingRepairTest extends AbstractPendingR
Assert.assertTrue(sstable.isPendingRepair());
Assert.assertFalse(sstable.isRepaired());
+ cfs.getCompactionStrategyManager().enable(); // enable compaction to fetch next background task
AbstractCompactionTask compactionTask = csm.getNextBackgroundTask(FBUtilities.nowInSeconds());
Assert.assertNotNull(compactionTask);
Assert.assertSame(PendingRepairManager.RepairFinishedCompactionTask.class, compactionTask.getClass());
http://git-wip-us.apache.org/repos/asf/cassandra/blob/30820eac/test/unit/org/apache/cassandra/db/compaction/PendingRepairManagerTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/compaction/PendingRepairManagerTest.java b/test/unit/org/apache/cassandra/db/compaction/PendingRepairManagerTest.java
index 1b43217..a173b4b 100644
--- a/test/unit/org/apache/cassandra/db/compaction/PendingRepairManagerTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/PendingRepairManagerTest.java
@@ -18,6 +18,7 @@
package org.apache.cassandra.db.compaction;
+import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.UUID;
@@ -152,10 +153,17 @@ public class PendingRepairManagerTest extends AbstractPendingRepairTest
Assert.assertEquals(2, prm.getSessions().size());
Assert.assertNull(prm.getNextBackgroundTask(FBUtilities.nowInSeconds()));
AbstractCompactionTask compactionTask = prm.getNextRepairFinishedTask();
- Assert.assertNotNull(compactionTask);
- Assert.assertSame(PendingRepairManager.RepairFinishedCompactionTask.class, compactionTask.getClass());
- PendingRepairManager.RepairFinishedCompactionTask cleanupTask = (PendingRepairManager.RepairFinishedCompactionTask) compactionTask;
- Assert.assertEquals(repairID, cleanupTask.getSessionID());
+ try
+ {
+ Assert.assertNotNull(compactionTask);
+ Assert.assertSame(PendingRepairManager.RepairFinishedCompactionTask.class, compactionTask.getClass());
+ PendingRepairManager.RepairFinishedCompactionTask cleanupTask = (PendingRepairManager.RepairFinishedCompactionTask) compactionTask;
+ Assert.assertEquals(repairID, cleanupTask.getSessionID());
+ }
+ finally
+ {
+ compactionTask.transaction.abort();
+ }
}
@Test
@@ -179,7 +187,15 @@ public class PendingRepairManagerTest extends AbstractPendingRepairTest
Assert.assertNotNull(prm.get(repairID));
LocalSessionAccessor.finalizeUnsafe(repairID);
- Assert.assertEquals(1, prm.getMaximalTasks(FBUtilities.nowInSeconds(), false).size());
+ Collection<AbstractCompactionTask> tasks = prm.getMaximalTasks(FBUtilities.nowInSeconds(), false);
+ try
+ {
+ Assert.assertEquals(1, tasks.size());
+ }
+ finally
+ {
+ tasks.stream().forEach(t -> t.transaction.abort());
+ }
}
@Test
@@ -191,7 +207,14 @@ public class PendingRepairManagerTest extends AbstractPendingRepairTest
mutateRepaired(sstable, repairId);
prm.addSSTable(sstable);
List<AbstractCompactionTask> tasks = csm.getUserDefinedTasks(Collections.singleton(sstable), 100);
- Assert.assertEquals(1, tasks.size());
+ try
+ {
+ Assert.assertEquals(1, tasks.size());
+ }
+ finally
+ {
+ tasks.stream().forEach(t -> t.transaction.abort());
+ }
}
@Test
@@ -208,6 +231,13 @@ public class PendingRepairManagerTest extends AbstractPendingRepairTest
prm.addSSTable(sstable);
prm.addSSTable(sstable2);
List<AbstractCompactionTask> tasks = csm.getUserDefinedTasks(Lists.newArrayList(sstable, sstable2), 100);
- Assert.assertEquals(2, tasks.size());
+ try
+ {
+ Assert.assertEquals(2, tasks.size());
+ }
+ finally
+ {
+ tasks.stream().forEach(t -> t.transaction.abort());
+ }
}
}