You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2012/02/17 12:34:56 UTC
git commit: Enable compression setting adjustment via JMX. Patch by
brandonwilliams, reviewed by xedin for CASSANDRA-3815.
Updated Branches:
refs/heads/cassandra-1.1 8f570ea68 -> 064adba2e
Enable compression setting adjustment via JMX.
Patch by brandonwilliams, reviewed by xedin for CASSANDRA-3815.
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/064adba2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/064adba2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/064adba2
Branch: refs/heads/cassandra-1.1
Commit: 064adba2e158c762a5d3bfec10f32cc0528a9f29
Parents: 8f570ea
Author: Brandon Williams <br...@apache.org>
Authored: Fri Feb 17 05:24:26 2012 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Fri Feb 17 05:24:26 2012 -0600
----------------------------------------------------------------------
.../org/apache/cassandra/config/CFMetaData.java | 2 +-
.../org/apache/cassandra/db/ColumnFamilyStore.java | 11 +++++++++++
.../cassandra/db/ColumnFamilyStoreMBean.java | 12 ++++++++++++
3 files changed, 24 insertions(+), 1 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/064adba2/src/java/org/apache/cassandra/config/CFMetaData.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java b/src/java/org/apache/cassandra/config/CFMetaData.java
index 06b1adf..96ed181 100644
--- a/src/java/org/apache/cassandra/config/CFMetaData.java
+++ b/src/java/org/apache/cassandra/config/CFMetaData.java
@@ -169,7 +169,7 @@ public final class CFMetaData
public Class<? extends AbstractCompactionStrategy> compactionStrategyClass;
public Map<String, String> compactionStrategyOptions;
- private CompressionParameters compressionParameters;
+ public CompressionParameters compressionParameters;
// Processed infos used by CQL. This can be fully reconstructed from the CFMedata,
// so it's not saved on disk. It is however costlyish to recreate for each query
http://git-wip-us.apache.org/repos/asf/cassandra/blob/064adba2/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 6d91d6e..18b73ba 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -31,6 +31,7 @@ import javax.management.*;
import com.google.common.collect.*;
import org.apache.cassandra.db.compaction.LeveledManifest;
+import org.apache.cassandra.io.compress.CompressionParameters;
import org.apache.cassandra.service.CacheService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -181,6 +182,16 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
{
return metadata.compactionStrategyClass.getName();
}
+
+ public Map<String,String> getCompressionParameters()
+ {
+ return metadata.compressionParameters().asThriftOptions();
+ }
+
+ public void setCompressionParameters(Map<String,String> opts) throws ConfigurationException
+ {
+ metadata.compressionParameters = CompressionParameters.create(opts);
+ }
private ColumnFamilyStore(Table table, String columnFamilyName, IPartitioner partitioner, int generation, CFMetaData metadata, Directories directories)
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/064adba2/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
index e06ced6..9054edd 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.db;
import java.io.IOException;
import java.util.List;
+import java.util.Map;
import java.util.concurrent.ExecutionException;
import org.apache.cassandra.config.ConfigurationException;
@@ -202,6 +203,17 @@ public interface ColumnFamilyStoreMBean
public String getCompactionStrategyClass();
/**
+ * Get the compression parameters
+ */
+ public Map<String,String> getCompressionParameters();
+
+ /**
+ * Set the compression parameters
+ * @param opts map of string names to values
+ */
+ public void setCompressionParameters(Map<String,String> opts) throws ConfigurationException;
+
+ /**
* Disable automatic compaction.
*/
public void disableAutoCompaction();