Repository: cassandra
Updated Branches:
  refs/heads/trunk 5839a4dbe -> b8dd3bd75


Group for anticompaction by the compaction strategy we have.

Patch by marcuse; reviewed by yukim for CASSANDRA-8578


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b8dd3bd7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b8dd3bd7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b8dd3bd7

Branch: refs/heads/trunk
Commit: b8dd3bd75f61c20350db37b784a667636fb6a24d
Parents: 5839a4d
Author: Marcus Eriksson <[email protected]>
Authored: Thu Jan 8 08:35:44 2015 +0100
Committer: Marcus Eriksson <[email protected]>
Committed: Wed Jan 14 08:36:11 2015 +0100

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 .../cassandra/db/compaction/WrappingCompactionStrategy.java    | 5 +++++
 .../cassandra/db/compaction/LeveledCompactionStrategyTest.java | 6 +++---
 3 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b8dd3bd7/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index b1f5465..7b0e398 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0
+ * Group sstables for anticompaction correctly (CASSANDRA-8578)
  * Add ReadFailureException to native protocol, respond
    immediately when replicas encounter errors while handling
    a read request (CASSANDRA-7886)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/b8dd3bd7/src/java/org/apache/cassandra/db/compaction/WrappingCompactionStrategy.java
----------------------------------------------------------------------
diff --git 
a/src/java/org/apache/cassandra/db/compaction/WrappingCompactionStrategy.java 
b/src/java/org/apache/cassandra/db/compaction/WrappingCompactionStrategy.java
index 55095a7..9d83a47 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/WrappingCompactionStrategy.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/WrappingCompactionStrategy.java
@@ -358,6 +358,11 @@ public final class WrappingCompactionStrategy extends 
AbstractCompactionStrategy
         return new ScannerList(scanners);
     }
 
+    public Collection<Collection<SSTableReader>> 
groupSSTablesForAntiCompaction(Collection<SSTableReader> sstablesToGroup)
+    {
+        return unrepaired.groupSSTablesForAntiCompaction(sstablesToGroup);
+    }
+
     public List<AbstractCompactionStrategy> getWrappedStrategies()
     {
         return Arrays.asList(repaired, unrepaired);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/b8dd3bd7/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
----------------------------------------------------------------------
diff --git 
a/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
 
b/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
index 1eca4e6..6ea8168 100644
--- 
a/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
+++ 
b/test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
@@ -121,10 +121,10 @@ public class LeveledCompactionStrategyTest
         }
 
         waitForLeveling(cfs);
-        LeveledCompactionStrategy strategy = (LeveledCompactionStrategy) 
cfs.getCompactionStrategy();
+        WrappingCompactionStrategy strategy = (WrappingCompactionStrategy) 
cfs.getCompactionStrategy();
         // Checking we're not completely bad at math
-        assert strategy.getLevelSize(1) > 0;
-        assert strategy.getLevelSize(2) > 0;
+        assert strategy.getSSTableCountPerLevel()[1] > 0;
+        assert strategy.getSSTableCountPerLevel()[2] > 0;
 
         Collection<Collection<SSTableReader>> groupedSSTables = 
cfs.getCompactionStrategy().groupSSTablesForAntiCompaction(cfs.getSSTables());
         for (Collection<SSTableReader> sstableGroup : groupedSSTables)

Reply via email to