diff --git a/src/java/org/apache/cassandra/io/sstable/SSTableReader.java b/src/java/org/apache/cassandra/io/sstable/SSTableReader.java index 96a00aaccd..8ac359d4c8 100644 --- a/src/java/org/apache/cassandra/io/sstable/SSTableReader.java +++ b/src/java/org/apache/cassandra/io/sstable/SSTableReader.java @@ -380,7 +380,7 @@ public class SSTableReader extends SSTable implements Comparable public long getPosition(DecoratedKey decoratedKey, Operator op) { // first, check bloom filter - if (op == Operator.EQ && !bf.isPresent(decoratedKey.key)) + if (op == Operator.EQ && !bf.isPresent(partitioner.convertToDiskFormat(decoratedKey))) return -1; // next, the key cache diff --git a/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java b/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java index b2ed1acff5..9c3fd54137 100644 --- a/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java +++ b/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java @@ -294,9 +294,10 @@ public class SSTableWriter extends SSTable public void afterAppend(DecoratedKey key, long dataPosition) throws IOException { - bf.add(key.key); + byte[] diskKey = partitioner.convertToDiskFormat(key); + bf.add(diskKey); long indexPosition = indexFile.getFilePointer(); - FBUtilities.writeShortByteArray(key.key, indexFile); + FBUtilities.writeShortByteArray(diskKey, indexFile); indexFile.writeLong(dataPosition); if (logger.isTraceEnabled()) logger.trace("wrote index of " + key + " at " + indexPosition);