You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by xe...@apache.org on 2011/10/04 17:57:00 UTC
svn commit: r1178843 - in /cassandra/branches/cassandra-1.0.0: CHANGES.txt
src/java/org/apache/cassandra/cli/CliClient.java
src/java/org/apache/cassandra/cli/CliUtils.java
Author: xedin
Date: Tue Oct 4 15:57:00 2011
New Revision: 1178843
URL: http://svn.apache.org/viewvc?rev=1178843&view=rev
Log:
Fix missing fields in CLI `show schema` output
patch by Pavel Yaskevich; reviewed by Jonathan Ellis for CASSANDRA-3304
Modified:
cassandra/branches/cassandra-1.0.0/CHANGES.txt
cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliClient.java
cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliUtils.java
Modified: cassandra/branches/cassandra-1.0.0/CHANGES.txt
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0.0/CHANGES.txt?rev=1178843&r1=1178842&r2=1178843&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0.0/CHANGES.txt (original)
+++ cassandra/branches/cassandra-1.0.0/CHANGES.txt Tue Oct 4 15:57:00 2011
@@ -13,7 +13,7 @@
* Fix stress COUNTER_GET option (CASSANDRA-3301)
* Change default heap thresholds to max(min(1/2 ram, 1G), min(1/4 ram, 8GB))
(CASSANDRA-3295)
-
+ * Fix missing fields in CLI `show schema` output (CASSANDRA-3304)
1.0.0-rc2
* Log a meaningful warning when a node receives a message for a repair session
Modified: cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliClient.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliClient.java?rev=1178843&r1=1178842&r2=1178843&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliClient.java (original)
+++ cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliClient.java Tue Oct 4 15:57:00 2011
@@ -1589,16 +1589,19 @@ public class CliClient
if (ksDef.strategy_options != null && !ksDef.strategy_options.isEmpty())
{
final StringBuilder opts = new StringBuilder();
- opts.append("[{");
+ opts.append("{");
String prefix = "";
for (Map.Entry<String, String> opt : ksDef.strategy_options.entrySet())
{
opts.append(prefix + CliUtils.escapeSQLString(opt.getKey()) + " : " + CliUtils.escapeSQLString(opt.getValue()));
prefix = ", ";
}
- opts.append("}]");
+ opts.append("}");
writeAttrRaw(sb, false, "strategy_options", opts.toString());
}
+
+ writeAttr(sb, false, "durable_writes", ksDef.durable_writes);
+
sb.append(";" + NEWLINE);
sb.append(NEWLINE);
@@ -1624,7 +1627,7 @@ public class CliClient
writeAttr(sb, true, "column_type", cfDef.column_type);
writeAttr(sb, false, "comparator", normaliseType(cfDef.comparator_type, "org.apache.cassandra.db.marshal"));
- if (cfDef.column_type == "Super")
+ if (cfDef.column_type.equals("Super"))
writeAttr(sb, false, "subcomparator", normaliseType(cfDef.subcomparator_type, "org.apache.cassandra.db.marshal"));
if (!StringUtils.isEmpty(cfDef.default_validation_class))
writeAttr(sb, false, "default_validation_class",
@@ -1633,6 +1636,7 @@ public class CliClient
normaliseType(cfDef.key_validation_class, "org.apache.cassandra.db.marshal"));
writeAttr(sb, false, "rows_cached", cfDef.row_cache_size);
writeAttr(sb, false, "row_cache_save_period", cfDef.row_cache_save_period_in_seconds);
+ writeAttr(sb, false, "row_cache_keys_to_save", cfDef.row_cache_keys_to_save);
writeAttr(sb, false, "keys_cached", cfDef.key_cache_size);
writeAttr(sb, false, "key_cache_save_period", cfDef.key_cache_save_period_in_seconds);
writeAttr(sb, false, "read_repair_chance", cfDef.read_repair_chance);
@@ -1641,6 +1645,32 @@ public class CliClient
writeAttr(sb, false, "max_compaction_threshold", cfDef.max_compaction_threshold);
writeAttr(sb, false, "replicate_on_write", cfDef.replicate_on_write);
writeAttr(sb, false, "row_cache_provider", normaliseType(cfDef.row_cache_provider, "org.apache.cassandra.cache"));
+ writeAttr(sb, false, "compaction_strategy", cfDef.compaction_strategy);
+
+ if (!cfDef.compaction_strategy_options.isEmpty())
+ {
+ StringBuilder cOptions = new StringBuilder();
+
+ cOptions.append("{");
+
+ Map<String, String> options = cfDef.compaction_strategy_options;
+
+ int i = 0, size = options.size();
+
+ for (Map.Entry<String, String> entry : options.entrySet())
+ {
+ cOptions.append(CliUtils.quote(entry.getKey())).append(" : ").append(CliUtils.quote(entry.getValue()));
+
+ if (i != size - 1)
+ cOptions.append(", ");
+
+ i++;
+ }
+
+ cOptions.append("}");
+
+ writeAttrRaw(sb, false, "compaction_strategy_options", cOptions.toString());
+ }
if (!StringUtils.isEmpty(cfDef.comment))
writeAttr(sb, false, "comment", cfDef.comment);
Modified: cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliUtils.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliUtils.java?rev=1178843&r1=1178842&r2=1178843&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliUtils.java (original)
+++ cassandra/branches/cassandra-1.0.0/src/java/org/apache/cassandra/cli/CliUtils.java Tue Oct 4 15:57:00 2011
@@ -118,4 +118,9 @@ public class CliUtils
return null;
}
+
+ public static String quote(String str)
+ {
+ return String.format("'%s'", str);
+ }
}