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 2011/11/01 05:16:55 UTC

svn commit: r1195810 - in /cassandra/branches/cassandra-1.0: src/java/org/apache/cassandra/config/ src/java/org/apache/cassandra/db/ src/java/org/apache/cassandra/db/index/keys/ test/unit/org/apache/cassandra/ test/unit/org/apache/cassandra/streaming/

Author: jbellis
Date: Tue Nov  1 04:16:54 2011
New Revision: 1195810

URL: http://svn.apache.org/viewvc?rev=1195810&view=rev
Log:
cleanup and fixes for index debug logging

Modified:
    cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/config/CFMetaData.java
    cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
    cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/Table.java
    cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java
    cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java
    cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/SchemaLoader.java
    cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java

Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/config/CFMetaData.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/config/CFMetaData.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/config/CFMetaData.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/config/CFMetaData.java Tue Nov  1 04:16:54 2011
@@ -244,6 +244,7 @@ public final class CFMetaData
     public static CFMetaData newIndexMetadata(CFMetaData parent, ColumnDefinition info, AbstractType columnComparator)
     {
         return new CFMetaData(parent.ksName, parent.indexColumnFamilyName(info), ColumnFamilyType.Standard, columnComparator, null)
+                             .keyValidator(info.getValidator())
                              .keyCacheSize(0.0)
                              .readRepairChance(0.0)
                              .gcGraceSeconds(parent.gcGraceSeconds)

Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/ColumnFamilyStore.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/ColumnFamilyStore.java Tue Nov  1 04:16:54 2011
@@ -1544,9 +1544,10 @@ public class ColumnFamilyStore implement
      * For testing.  no effort is made to clear historical memtables, nor for
      * thread safety
      */
-    void clearUnsafe()
+    public void clearUnsafe()
     {
-        data.init();
+        for (ColumnFamilyStore cfs : concatWithIndexes())
+            cfs.data.init();
     }
 
     /**

Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/Table.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/Table.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/Table.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/Table.java Tue Nov  1 04:16:54 2011
@@ -514,7 +514,9 @@ public class Table
 
     public static void indexRow(DecoratedKey<?> key, ColumnFamilyStore cfs, SortedSet<ByteBuffer> indexedColumns)
     {
-        logger.debug("Indexing row {} ", key);
+        if (logger.isDebugEnabled())
+            logger.debug("Indexing row {} ", cfs.metadata.getKeyValidator().getString(key.key));
+
         switchLock.readLock().lock();
         try
         {

Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java Tue Nov  1 04:16:54 2011
@@ -56,19 +56,19 @@ public class KeysIndex extends PerColumn
         assert baseCfs != null && columnDefs != null;
 
         ColumnDefinition columnDef = columnDefs.iterator().next();
-        CFMetaData indexedCfMetadata = CFMetaData.newIndexMetadata(baseCfs.metadata, columnDef,indexComparator());
+        CFMetaData indexedCfMetadata = CFMetaData.newIndexMetadata(baseCfs.metadata, columnDef, indexComparator());
         indexCfs = ColumnFamilyStore.createColumnFamilyStore(baseCfs.table,
-                                                               indexedCfMetadata.cfName,
-                                                               new LocalPartitioner(columnDef.getValidator()),
-                                                               indexedCfMetadata);
+                                                             indexedCfMetadata.cfName,
+                                                             new LocalPartitioner(columnDef.getValidator()),
+                                                             indexedCfMetadata);
     }
 
     public static AbstractType indexComparator()
     {
         IPartitioner rowPartitioner = StorageService.getPartitioner();
         return (rowPartitioner instanceof OrderPreservingPartitioner || rowPartitioner instanceof ByteOrderedPartitioner)
-                                        ? BytesType.instance
-                                        : new LocalByPartionerType(StorageService.getPartitioner());
+               ? BytesType.instance
+               : new LocalByPartionerType(StorageService.getPartitioner());
     }
 
     @Override
@@ -99,7 +99,7 @@ public class KeysIndex extends PerColumn
             cfi.addColumn(new Column(rowKey, ByteBufferUtil.EMPTY_BYTE_BUFFER, column.timestamp()));
         }
         if (logger.isDebugEnabled())
-            logger.debug("applying index row {}:{}", valueKey, cfi);
+            logger.debug("applying index row {} in {}", indexCfs.metadata.getKeyValidator().getString(valueKey.key), cfi);
         
         indexCfs.apply(valueKey, cfi);
     }

Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java Tue Nov  1 04:16:54 2011
@@ -149,7 +149,7 @@ public class KeysSearcher extends Second
              * should be pretty close to `start_key`. */
             if (logger.isDebugEnabled())
                 logger.debug(String.format("Scanning index %s starting with %s",
-                                           expressionString(primary), index.getUnderlyingCfs().getComparator().getString(startKey)));
+                                           expressionString(primary), index.getBaseCFStore().metadata.getKeyValidator().getString(startKey)));
 
             // We shouldn't fetch only 1 row as this provides buggy paging in case the first row doesn't satisfy all clauses
             int count = Math.max(clause.count, 2);

Modified: cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/SchemaLoader.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/SchemaLoader.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/SchemaLoader.java (original)
+++ cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/SchemaLoader.java Tue Nov  1 04:16:54 2011
@@ -276,8 +276,9 @@ public class SchemaLoader
     private static CFMetaData indexCFMD(String ksName, String cfName, final Boolean withIdxType) throws ConfigurationException
     {
         return standardCFMD(ksName, cfName)
-                .columnMetadata(new HashMap<ByteBuffer, ColumnDefinition>()
-                    {{
+               .keyValidator(AsciiType.instance)
+               .columnMetadata(new HashMap<ByteBuffer, ColumnDefinition>()
+                   {{
                         ByteBuffer cName = ByteBuffer.wrap("birthdate".getBytes(Charsets.UTF_8));
                         IndexType keys = withIdxType ? IndexType.KEYS : null;
                         put(cName, new ColumnDefinition(cName, LongType.instance, keys, null, ByteBufferUtil.bytesToHex(cName)));

Modified: cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java?rev=1195810&r1=1195809&r2=1195810&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java (original)
+++ cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java Tue Nov  1 04:16:54 2011
@@ -48,10 +48,15 @@ import org.apache.cassandra.utils.NodeId
 
 import org.junit.BeforeClass;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import org.apache.cassandra.utils.ByteBufferUtil;
 
 public class StreamingTransferTest extends CleanupHelper
 {
+    private static final Logger logger = LoggerFactory.getLogger(StreamingTransferTest.class);
+
     public static final InetAddress LOCAL = FBUtilities.getBroadcastAddress();
 
     @BeforeClass
@@ -67,6 +72,7 @@ public class StreamingTransferTest exten
     private List<String> createAndTransfer(Table table, ColumnFamilyStore cfs, Mutator mutator) throws Exception
     {
         // write a temporary SSTable, and unregister it
+        logger.debug("Mutating " + cfs.columnFamily);
         long timestamp = 1234;
         for (int i = 1; i <= 3; i++)
             mutator.mutate("key" + i, "col" + i, timestamp);
@@ -79,6 +85,7 @@ public class StreamingTransferTest exten
         cfs.removeAllSSTables();
 
         // transfer the first and last key
+        logger.debug("Transferring " + cfs.columnFamily);
         int[] offs = new int[]{1, 3};
         IPartitioner p = StorageService.getPartitioner();
         List<Range> ranges = new ArrayList<Range>();
@@ -110,6 +117,8 @@ public class StreamingTransferTest exten
         List<String> keys = new ArrayList<String>();
         for (int off : offs)
             keys.add("key" + off);
+
+        logger.debug("... everything looks good for " + cfs.columnFamily);
         return keys;
     }
 
@@ -129,6 +138,7 @@ public class StreamingTransferTest exten
                 cf.addColumn(column(col, "v", timestamp));
                 cf.addColumn(new Column(ByteBufferUtil.bytes("birthdate"), ByteBufferUtil.bytes(val), timestamp));
                 rm.add(cf);
+                logger.debug("Applying row to transfer " + rm);
                 rm.apply();
             }
         });