You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sl...@apache.org on 2012/03/27 17:35:31 UTC

[4/4] git commit: Add caching and bloomFilterFpChance to CQL CF options

Add caching and bloomFilterFpChance to CQL CF options

patch by xedin & slebresne; reviewed by xedin for CASSANDRA-4042


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

Branch: refs/heads/trunk
Commit: 6a35df38ca6fd9aa9e1ffb639beade0acaada62e
Parents: c38d326
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Mar 27 16:33:01 2012 +0200
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Mar 27 17:05:39 2012 +0200

----------------------------------------------------------------------
 CHANGES.txt                                        |    3 +++
 src/java/org/apache/cassandra/config/Avro.java     |    2 +-
 .../org/apache/cassandra/config/CFMetaData.java    |    5 ++++-
 .../apache/cassandra/cql/AlterTableStatement.java  |    2 ++
 src/java/org/apache/cassandra/cql/CFPropDefs.java  |    5 ++++-
 .../cassandra/cql/CreateColumnFamilyStatement.java |    2 ++
 src/java/org/apache/cassandra/cql3/CFPropDefs.java |    5 ++++-
 .../cql3/statements/AlterTableStatement.java       |    2 ++
 .../statements/CreateColumnFamilyStatement.java    |    2 ++
 9 files changed, 24 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 0c726fd..4238260 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,3 +1,6 @@
+1.1-dev
+ * Adds caching and bloomFilterFpChange to CQL options (CASSANDRA-4042)
+
 1.1-beta2
  * rename loaded sstables to avoid conflicts with local snapshots
    (CASSANDRA-3967)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/config/Avro.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/Avro.java b/src/java/org/apache/cassandra/config/Avro.java
index b34d37a..954a6aa 100644
--- a/src/java/org/apache/cassandra/config/Avro.java
+++ b/src/java/org/apache/cassandra/config/Avro.java
@@ -155,7 +155,7 @@ public class Avro
 
         try
         {
-            caching = cf.caching == null ? CFMetaData.Caching.KEYS_ONLY : CFMetaData.Caching.fromString(cf.caching.toString());
+            caching = cf.caching == null ? CFMetaData.DEFAULT_CACHING_STRATEGY : CFMetaData.Caching.fromString(cf.caching.toString());
         }
         catch (ConfigurationException e)
         {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/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 2c1df75..b8b97bb 100644
--- a/src/java/org/apache/cassandra/config/CFMetaData.java
+++ b/src/java/org/apache/cassandra/config/CFMetaData.java
@@ -67,6 +67,8 @@ public final class CFMetaData
     public final static int DEFAULT_MAX_COMPACTION_THRESHOLD = 32;
     public final static String DEFAULT_COMPACTION_STRATEGY_CLASS = "SizeTieredCompactionStrategy";
     public final static ByteBuffer DEFAULT_KEY_NAME = ByteBufferUtil.bytes("KEY");
+    public final static Caching DEFAULT_CACHING_STRATEGY = Caching.KEYS_ONLY;
+    public final static Double DEFAULT_BF_FP_CHANCE = null;
 
     public static final CFMetaData StatusCf = newSystemMetadata(SystemTable.STATUS_CF, 0, "persistent metadata for the local node", BytesType.instance, null);
     public static final CFMetaData HintsCf = newSystemMetadata(HintedHandOffManager.HINTS_CF, 1, "hinted handoff data", BytesType.instance, BytesType.instance);
@@ -248,7 +250,8 @@ public final class CFMetaData
         // System cfs have specific ids, and copies of old CFMDs need
         //  to copy over the old id.
         cfId = id;
-        caching = Caching.KEYS_ONLY;
+        caching = DEFAULT_CACHING_STRATEGY;
+        bloomFilterFpChance = DEFAULT_BF_FP_CHANCE;
 
         this.init();
     }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/cql/AlterTableStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql/AlterTableStatement.java b/src/java/org/apache/cassandra/cql/AlterTableStatement.java
index 0557397..b8b2e6f 100644
--- a/src/java/org/apache/cassandra/cql/AlterTableStatement.java
+++ b/src/java/org/apache/cassandra/cql/AlterTableStatement.java
@@ -187,6 +187,8 @@ public class AlterTableStatement
         cfDef.replicate_on_write = cfProps.getPropertyBoolean(CFPropDefs.KW_REPLICATEONWRITE, cfDef.replicate_on_write);
         cfDef.min_compaction_threshold = cfProps.getPropertyInt(CFPropDefs.KW_MINCOMPACTIONTHRESHOLD, cfDef.min_compaction_threshold);
         cfDef.max_compaction_threshold = cfProps.getPropertyInt(CFPropDefs.KW_MAXCOMPACTIONTHRESHOLD, cfDef.max_compaction_threshold);
+        cfDef.caching = cfProps.getPropertyString(CFPropDefs.KW_CACHING, cfDef.caching);
+        cfDef.bloom_filter_fp_chance = cfProps.getPropertyDouble(CFPropDefs.KW_BF_FP_CHANCE, cfDef.bloom_filter_fp_chance);
 
         if (!cfProps.compactionStrategyOptions.isEmpty())
         {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/cql/CFPropDefs.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql/CFPropDefs.java b/src/java/org/apache/cassandra/cql/CFPropDefs.java
index 8bcbcf2..f9033a8 100644
--- a/src/java/org/apache/cassandra/cql/CFPropDefs.java
+++ b/src/java/org/apache/cassandra/cql/CFPropDefs.java
@@ -50,8 +50,9 @@ public class CFPropDefs {
     public static final String KW_MINCOMPACTIONTHRESHOLD = "min_compaction_threshold";
     public static final String KW_MAXCOMPACTIONTHRESHOLD = "max_compaction_threshold";
     public static final String KW_REPLICATEONWRITE = "replicate_on_write";
-
     public static final String KW_COMPACTION_STRATEGY_CLASS = "compaction_strategy_class";
+    public static final String KW_CACHING = "caching";
+    public static final String KW_BF_FP_CHANCE = "bloom_filter_fp_chance";
 
     // Maps CQL short names to the respective Cassandra comparator/validator class names
     public static final Map<String, String> comparators = new HashMap<String, String>();
@@ -89,6 +90,8 @@ public class CFPropDefs {
         keywords.add(KW_MAXCOMPACTIONTHRESHOLD);
         keywords.add(KW_REPLICATEONWRITE);
         keywords.add(KW_COMPACTION_STRATEGY_CLASS);
+        keywords.add(KW_CACHING);
+        keywords.add(KW_BF_FP_CHANCE);
 
         obsoleteKeywords.add("row_cache_size");
         obsoleteKeywords.add("key_cache_size");

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/cql/CreateColumnFamilyStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql/CreateColumnFamilyStatement.java b/src/java/org/apache/cassandra/cql/CreateColumnFamilyStatement.java
index a5acd62..85d5ee4 100644
--- a/src/java/org/apache/cassandra/cql/CreateColumnFamilyStatement.java
+++ b/src/java/org/apache/cassandra/cql/CreateColumnFamilyStatement.java
@@ -189,6 +189,8 @@ public class CreateColumnFamilyStatement
                    .compactionStrategyClass(cfProps.compactionStrategyClass)
                    .compactionStrategyOptions(cfProps.compactionStrategyOptions)
                    .compressionParameters(CompressionParameters.create(cfProps.compressionParameters))
+                   .caching(CFMetaData.Caching.fromString(getPropertyString(CFPropDefs.KW_CACHING, CFMetaData.DEFAULT_CACHING_STRATEGY.toString())))
+                   .bloomFilterFpChance(getPropertyDouble(CFPropDefs.KW_BF_FP_CHANCE, CFMetaData.DEFAULT_BF_FP_CHANCE))
                    .validate();
         }
         catch (ConfigurationException e)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/cql3/CFPropDefs.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/CFPropDefs.java b/src/java/org/apache/cassandra/cql3/CFPropDefs.java
index 7ac2167..8546080 100644
--- a/src/java/org/apache/cassandra/cql3/CFPropDefs.java
+++ b/src/java/org/apache/cassandra/cql3/CFPropDefs.java
@@ -45,8 +45,9 @@ public class CFPropDefs
     public static final String KW_MINCOMPACTIONTHRESHOLD = "min_compaction_threshold";
     public static final String KW_MAXCOMPACTIONTHRESHOLD = "max_compaction_threshold";
     public static final String KW_REPLICATEONWRITE = "replicate_on_write";
-
     public static final String KW_COMPACTION_STRATEGY_CLASS = "compaction_strategy_class";
+    public static final String KW_CACHING = "caching";
+    public static final String KW_BF_FP_CHANCE = "bloom_filter_fp_chance";
 
     // Maps CQL short names to the respective Cassandra comparator/validator class names
     public static final Map<String, String> comparators = new HashMap<String, String>();
@@ -82,6 +83,8 @@ public class CFPropDefs
         keywords.add(KW_MAXCOMPACTIONTHRESHOLD);
         keywords.add(KW_REPLICATEONWRITE);
         keywords.add(KW_COMPACTION_STRATEGY_CLASS);
+        keywords.add(KW_CACHING);
+        keywords.add(KW_BF_FP_CHANCE);
 
         obsoleteKeywords.add("row_cache_size");
         obsoleteKeywords.add("key_cache_size");

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
index 9e08fbb..5fd9786 100644
--- a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
@@ -150,6 +150,8 @@ public class AlterTableStatement extends SchemaAlteringStatement
         cfDef.replicate_on_write = cfProps.getBoolean(CFPropDefs.KW_REPLICATEONWRITE, cfDef.replicate_on_write);
         cfDef.min_compaction_threshold = cfProps.getInt(CFPropDefs.KW_MINCOMPACTIONTHRESHOLD, cfDef.min_compaction_threshold);
         cfDef.max_compaction_threshold = cfProps.getInt(CFPropDefs.KW_MAXCOMPACTIONTHRESHOLD, cfDef.max_compaction_threshold);
+        cfDef.caching = cfProps.getString(CFPropDefs.KW_CACHING, cfDef.caching);
+        cfDef.bloom_filter_fp_chance = cfProps.getDouble(CFPropDefs.KW_BF_FP_CHANCE, cfDef.bloom_filter_fp_chance);
 
         if (!cfProps.compactionStrategyOptions.isEmpty())
         {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6a35df38/src/java/org/apache/cassandra/cql3/statements/CreateColumnFamilyStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateColumnFamilyStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateColumnFamilyStatement.java
index 1689895..da9f4da 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateColumnFamilyStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateColumnFamilyStatement.java
@@ -117,6 +117,8 @@ public class CreateColumnFamilyStatement extends SchemaAlteringStatement
                    .valueAlias(valueAlias)
                    .compactionStrategyOptions(properties.compactionStrategyOptions)
                    .compressionParameters(CompressionParameters.create(properties.compressionParameters))
+                   .caching(CFMetaData.Caching.fromString(properties.getString(CFPropDefs.KW_CACHING, CFMetaData.DEFAULT_CACHING_STRATEGY.toString())))
+                   .bloomFilterFpChance(properties.getDouble(CFPropDefs.KW_BF_FP_CHANCE, CFMetaData.DEFAULT_BF_FP_CHANCE))
                    .validate();
         }
         catch (ConfigurationException e)