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 2009/07/30 17:18:04 UTC
svn commit: r799320 - in
/incubator/cassandra/trunk/src/java/org/apache/cassandra:
config/DatabaseDescriptor.java service/CassandraServer.java
Author: jbellis
Date: Thu Jul 30 15:18:03 2009
New Revision: 799320
URL: http://svn.apache.org/viewvc?rev=799320&view=rev
Log:
add CompareSubcolumnsWith to describe_keyspace. patch by Evan Weaver; reviewed by Michael Greene for CASSANDRA-326
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java?rev=799320&r1=799319&r2=799320&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java Thu Jul 30 15:18:03 2009
@@ -396,7 +396,7 @@
// Parse out the column comparator
AbstractType columnComparator = getComparator(columnFamily, "CompareWith");
- AbstractType subcolumnComparator;
+ AbstractType subcolumnComparator = null;
if (columnType.equals("Super"))
{
subcolumnComparator = getComparator(columnFamily, "CompareSubcolumnsWith");
@@ -448,7 +448,7 @@
cfMetaData.columnType = columnType;
cfMetaData.comparator = columnComparator;
- cfMetaData.subcolumnComparator = columnComparator;
+ cfMetaData.subcolumnComparator = subcolumnComparator;
cfMetaData.n_rowKey = n_rowKey;
cfMetaData.n_columnMap = n_columnMap;
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java?rev=799320&r1=799319&r2=799320&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java Thu Jul 30 15:18:03 2009
@@ -475,37 +475,45 @@
public Map<String, Map<String, String>> describe_keyspace(String table) throws NotFoundException
{
- Map <String, Map<String, String>> columnFamiliesMap = new HashMap<String, Map<String, String>> ();
+ Map<String, Map<String, String>> columnFamiliesMap = new HashMap<String, Map<String, String>>();
Map<String, CFMetaData> tableMetaData = DatabaseDescriptor.getTableMetaData(table);
// table doesn't exist
- if (tableMetaData == null) {
+ if (tableMetaData == null)
+ {
throw new NotFoundException();
}
-
+
Iterator iter = tableMetaData.entrySet().iterator();
while (iter.hasNext())
{
Map.Entry<String, CFMetaData> pairs = (Map.Entry<String, CFMetaData>) iter.next();
CFMetaData columnFamilyMetaData = pairs.getValue();
- String desc = "";
-
+ String desc = "";
+
Map<String, String> columnMap = new HashMap<String, String>();
desc = columnFamilyMetaData.n_columnMap + "(" + columnFamilyMetaData.n_columnKey + ", " + columnFamilyMetaData.n_columnValue + ", " + columnFamilyMetaData.n_columnTimestamp + ")";
- if (columnFamilyMetaData.columnType.equals("Super")) {
+ if (columnFamilyMetaData.columnType.equals("Super"))
+ {
columnMap.put("Type", "Super");
- desc = columnFamilyMetaData.n_superColumnMap + "(" + columnFamilyMetaData.n_superColumnKey + ", " + desc + ")";
- } else {
+ desc = columnFamilyMetaData.n_superColumnMap + "(" + columnFamilyMetaData.n_superColumnKey + ", " + desc + ")";
+ }
+ else
+ {
columnMap.put("Type", "Standard");
}
-
- desc = columnFamilyMetaData.tableName + "." + columnFamilyMetaData.cfName + "(" +
- columnFamilyMetaData.n_rowKey + ", " + desc + ")";
+
+ desc = columnFamilyMetaData.tableName + "." + columnFamilyMetaData.cfName + "(" +
+ columnFamilyMetaData.n_rowKey + ", " + desc + ")";
columnMap.put("Desc", desc);
columnMap.put("CompareWith", columnFamilyMetaData.comparator.getClass().getName());
+ if (columnFamilyMetaData.columnType.equals("Super"))
+ {
+ columnMap.put("CompareSubcolumnsWith", columnFamilyMetaData.subcolumnComparator.getClass().getName());
+ }
columnMap.put("FlushPeriodInMinutes", columnFamilyMetaData.flushPeriodInMinutes + "");
columnFamiliesMap.put(columnFamilyMetaData.cfName, columnMap);
}