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()