Skip to content

Commit ebf366d

Browse files
author
Nitsan Wakart
committed
Fix bug in clustering key read (block header shift)
1 parent c059644 commit ebf366d

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

src/java/org/apache/cassandra/io/sstable/SSTableCursorReader.java

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -543,11 +543,8 @@ static void readUnfilteredClustering(RandomAccessReader dataReader, AbstractType
543543
clusteringBlockHeader = dataReader.readUnsignedVInt();
544544
clustering.writeUnsignedVInt(clusteringBlockHeader);
545545
}
546-
clusteringBlockHeader = clusteringBlockHeader >>> 2;
547-
// struct clustering_block {
548-
// varint clustering_block_header;
549-
// simple_cell[] clustering_cells;
550-
// };
546+
547+
// load value if present
551548
if ((clusteringBlockHeader & 0b11) == 0)
552549
{
553550
AbstractType<?> type = types[clusteringIndex];
@@ -566,6 +563,7 @@ static void readUnfilteredClustering(RandomAccessReader dataReader, AbstractType
566563
clustering.loadPart(dataReader, varLength);
567564
}
568565
}
566+
clusteringBlockHeader = clusteringBlockHeader >>> 2;
569567
}
570568
if (fixedLengthClusteringLength != 0) clustering.loadPart(dataReader, fixedLengthClusteringLength);
571569
}
@@ -583,17 +581,14 @@ private static void skipClustering(RandomAccessReader dataReader, AbstractType<?
583581
{
584582
clusteringBlockHeader = dataReader.readUnsignedVInt();
585583
}
586-
clusteringBlockHeader = clusteringBlockHeader >>> 2;
587-
// struct clustering_block {
588-
// varint clustering_block_header;
589-
// simple_cell[] clustering_cells;
590-
// };
584+
// skip value if present
591585
if ((clusteringBlockHeader & 0b11) == 0)
592586
{
593587
AbstractType<?> type = types[clusteringIndex];
594588
int len = type.isValueLengthFixed() ? type.valueLengthIfFixed() : dataReader.readUnsignedVInt32();
595589
dataReader.skipBytes(len);
596590
}
591+
clusteringBlockHeader = clusteringBlockHeader >>> 2;
597592
}
598593
}
599594

0 commit comments

Comments
 (0)