kick off background compaction when min/max thresholds change
patch by jbellis; reviewed by slebresne for CASSANDRA-4279


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

Branch: refs/heads/cassandra-1.1
Commit: 1bfb68518a20abdfd7fd1c3e3422df9214df6b05
Parents: 0f439b0
Author: Jonathan Ellis <jbel...@apache.org>
Authored: Fri May 25 15:49:49 2012 -0500
Committer: Jonathan Ellis <jbel...@apache.org>
Committed: Fri May 25 15:50:48 2012 -0500

----------------------------------------------------------------------
 CHANGES.txt                                        |    2 ++
 .../org/apache/cassandra/db/ColumnFamilyStore.java |    8 ++++----
 2 files changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/1bfb6851/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3abd9fc..2700661 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -73,6 +73,8 @@ Merged from 1.0:
    (CASSANDRA-3985)
  * synchronize LCS getEstimatedTasks to avoid CME (CASSANDRA-4255)
  * ensure unique streaming session id's (CASSANDRA-4223)
+ * kick off background compaction when min/max thresholds change 
+   (CASSANDRA-4279)
 
 
 1.1.0-final

http://git-wip-us.apache.org/repos/asf/cassandra/blob/1bfb6851/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index c55d924..4a49d10 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -1824,10 +1824,10 @@ public class ColumnFamilyStore implements 
ColumnFamilyStoreMBean
     public void setMinimumCompactionThreshold(int minCompactionThreshold)
     {
         if ((minCompactionThreshold > this.maxCompactionThreshold.value()) && 
this.maxCompactionThreshold.value() != 0)
-        {
             throw new RuntimeException("The min_compaction_threshold cannot be 
larger than the max.");
-        }
+
         this.minCompactionThreshold.set(minCompactionThreshold);
+        CompactionManager.instance.submitBackground(this);
     }
 
     public int getMaximumCompactionThreshold()
@@ -1838,10 +1838,10 @@ public class ColumnFamilyStore implements 
ColumnFamilyStoreMBean
     public void setMaximumCompactionThreshold(int maxCompactionThreshold)
     {
         if (maxCompactionThreshold > 0 && maxCompactionThreshold < 
this.minCompactionThreshold.value())
-        {
             throw new RuntimeException("The max_compaction_threshold cannot be 
smaller than the min.");
-        }
+
         this.maxCompactionThreshold.set(maxCompactionThreshold);
+        CompactionManager.instance.submitBackground(this);
     }
 
     public boolean isCompactionDisabled()

Reply via email to