You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2014/05/21 20:11:32 UTC
[2/3] git commit: Change concurrent_compactors defaults patch by
jbellis; reviewed by bes for CASSANDRA-7139
Change concurrent_compactors defaults
patch by jbellis; reviewed by bes for CASSANDRA-7139
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e00878d9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e00878d9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e00878d9
Branch: refs/heads/trunk
Commit: e00878d9558d9220ef864c6dfb69293ada36e2bd
Parents: e024a1c
Author: Jonathan Ellis <jb...@apache.org>
Authored: Wed May 21 13:11:16 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Wed May 21 13:11:16 2014 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
conf/cassandra.yaml | 4 ++--
src/java/org/apache/cassandra/config/Config.java | 2 +-
src/java/org/apache/cassandra/config/DatabaseDescriptor.java | 2 +-
4 files changed, 5 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/e00878d9/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 209ff70..61ea788 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.1.0-rc1
+ * Change concurrent_compactors defaults (CASSANDRA-7139)
* Add PowerShell Windows launch scripts (CASSANDRA-7001)
* Make commitlog archive+restore more robust (CASSANDRA-6974)
* Fix marking commitlogsegments clean (CASSANDRA-6959)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/e00878d9/conf/cassandra.yaml
----------------------------------------------------------------------
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 6e47918..b9964ed 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -500,8 +500,8 @@ in_memory_compaction_limit_in_mb: 64
# slowly or too fast, you should look at
# compaction_throughput_mb_per_sec first.
#
-# concurrent_compactors defaults to the number of cores.
-# Uncomment to make compaction mono-threaded, the pre-0.8 default.
+# concurrent_compactors defaults to the smaller of (number of disks,
+# number of cores), with a minimum of 2 and a maximum of 8.
#concurrent_compactors: 1
# Throttles compaction to the given total throughput across the entire
http://git-wip-us.apache.org/repos/asf/cassandra/blob/e00878d9/src/java/org/apache/cassandra/config/Config.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/Config.java b/src/java/org/apache/cassandra/config/Config.java
index 97ceb7f..07d0a59 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -132,7 +132,7 @@ public class Config
public Integer column_index_size_in_kb = 64;
public Integer batch_size_warn_threshold_in_kb = 5;
public Integer in_memory_compaction_limit_in_mb = 64;
- public Integer concurrent_compactors = FBUtilities.getAvailableProcessors();
+ public Integer concurrent_compactors;
public volatile Integer compaction_throughput_mb_per_sec = 16;
public Integer max_streaming_retries = 3;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/e00878d9/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 7688383..c916fea 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -453,7 +453,7 @@ public class DatabaseDescriptor
}
if (conf.concurrent_compactors == null)
- conf.concurrent_compactors = FBUtilities.getAvailableProcessors();
+ conf.concurrent_compactors = Math.min(8, Math.max(2, Math.min(FBUtilities.getAvailableProcessors(), conf.data_file_directories.length)));
if (conf.concurrent_compactors <= 0)
throw new ConfigurationException("concurrent_compactors should be strictly greater than 0");