Author: jbellis Date: Tue Nov 1 03:49:33 2011 New Revision: 1195801 URL: http://svn.apache.org/viewvc?rev=1195801&view=rev Log: cleanup and fixes for index debug logging
Modified: cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java cassandra/trunk/src/java/org/apache/cassandra/db/Table.java cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java cassandra/trunk/test/unit/org/apache/cassandra/SchemaLoader.java cassandra/trunk/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java Modified: cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java Tue Nov 1 03:49:33 2011 @@ -232,6 +232,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/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java Tue Nov 1 03:49:33 2011 @@ -1533,9 +1533,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/trunk/src/java/org/apache/cassandra/db/Table.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/Table.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/Table.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/Table.java Tue Nov 1 03:49:33 2011 @@ -512,7 +512,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/trunk/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysIndex.java Tue Nov 1 03:49:33 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()); indexedCfs = 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 {}", indexedCfs.metadata.getKeyValidator().getString(valueKey.key), cfi); indexedCfs.apply(valueKey, cfi); } Modified: cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java Tue Nov 1 03:49:33 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/trunk/test/unit/org/apache/cassandra/SchemaLoader.java URL: http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/SchemaLoader.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/test/unit/org/apache/cassandra/SchemaLoader.java (original) +++ cassandra/trunk/test/unit/org/apache/cassandra/SchemaLoader.java Tue Nov 1 03:49:33 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/trunk/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java URL: http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java?rev=1195801&r1=1195800&r2=1195801&view=diff ============================================================================== --- cassandra/trunk/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java (original) +++ cassandra/trunk/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java Tue Nov 1 03:49:33 2011 @@ -47,10 +47,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 @@ -66,6 +71,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); @@ -78,6 +84,7 @@ public class StreamingTransferTest exten cfs.unreferenceSSTables(); // 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>(); @@ -109,6 +116,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; } @@ -128,6 +137,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(); } });