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);
         }