Merge branch 'cassandra-3.0' into cassandra-3.11
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/075f4586 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/075f4586 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/075f4586 Branch: refs/heads/cassandra-3.11 Commit: 075f4586231f2481bfc9f7d10a0e04784b281fc3 Parents: 4e6eb9a 285153f Author: Blake Eggleston <bdeggles...@gmail.com> Authored: Tue Oct 16 12:48:38 2018 -0700 Committer: Blake Eggleston <bdeggles...@gmail.com> Committed: Tue Oct 16 12:48:38 2018 -0700 ---------------------------------------------------------------------- CHANGES.txt | 1 + .../columniterator/SSTableReversedIterator.java | 118 +++++++++++++++---- ...acted_multi_block_rt-ka-4-CompressionInfo.db | Bin 0 -> 43 bytes ...acy_ka_compacted_multi_block_rt-ka-4-Data.db | Bin 0 -> 17848 bytes ...ka_compacted_multi_block_rt-ka-4-Digest.sha1 | 1 + ...y_ka_compacted_multi_block_rt-ka-4-Filter.db | Bin 0 -> 176 bytes ...cy_ka_compacted_multi_block_rt-ka-4-Index.db | Bin 0 -> 303 bytes ..._compacted_multi_block_rt-ka-4-Statistics.db | Bin 0 -> 4490 bytes ..._ka_compacted_multi_block_rt-ka-4-Summary.db | Bin 0 -> 92 bytes ...acy_ka_compacted_multi_block_rt-ka-4-TOC.txt | 8 ++ ...ushed_multi_block_rt-ka-1-CompressionInfo.db | Bin 0 -> 43 bytes ...egacy_ka_flushed_multi_block_rt-ka-1-Data.db | Bin 0 -> 17569 bytes ...y_ka_flushed_multi_block_rt-ka-1-Digest.sha1 | 1 + ...acy_ka_flushed_multi_block_rt-ka-1-Filter.db | Bin 0 -> 16 bytes ...gacy_ka_flushed_multi_block_rt-ka-1-Index.db | Bin 0 -> 306 bytes ...ka_flushed_multi_block_rt-ka-1-Statistics.db | Bin 0 -> 4478 bytes ...cy_ka_flushed_multi_block_rt-ka-1-Summary.db | Bin 0 -> 92 bytes ...egacy_ka_flushed_multi_block_rt-ka-1-TOC.txt | 8 ++ .../cassandra/io/sstable/LegacySSTableTest.java | 26 ++++ 19 files changed, 140 insertions(+), 23 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/075f4586/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index d02226e,78c0c47..d28ba32 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,5 -1,5 +1,6 @@@ -3.0.18 +3.11.4 +Merged from 3.0: + * Legacy sstables with multi block range tombstones create invalid bound sequences (CASSANDRA-14823) * Expand range tombstone validation checks to multiple interim request stages (CASSANDRA-14824) * Reverse order reads can return incomplete results (CASSANDRA-14803) * Avoid calling iter.next() in a loop when notifying indexers about range tombstones (CASSANDRA-14794) http://git-wip-us.apache.org/repos/asf/cassandra/blob/075f4586/src/java/org/apache/cassandra/db/columniterator/SSTableReversedIterator.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/db/columniterator/SSTableReversedIterator.java index f5094a5,2d95dab..82f358b --- a/src/java/org/apache/cassandra/db/columniterator/SSTableReversedIterator.java +++ b/src/java/org/apache/cassandra/db/columniterator/SSTableReversedIterator.java @@@ -165,21 -157,30 +167,30 @@@ public class SSTableReversedIterator ex { if (!hasNext()) throw new NoSuchElementException(); - return iterator.next(); + Unfiltered next = iterator.next(); + mostRecentlyEmitted = next; + return next; } - protected boolean stopReadingDisk() + protected boolean stopReadingDisk() throws IOException { return false; } + // checks if left prefix precedes right prefix + private boolean precedes(ClusteringPrefix left, ClusteringPrefix right) + { + return metadata().comparator.compare(left, right) < 0; + } + // Reads the unfiltered from disk and load them into the reader buffer. It stops reading when either the partition // is fully read, or when stopReadingDisk() returns true. - protected void loadFromDisk(Slice.Bound start, - Slice.Bound end, + protected void loadFromDisk(ClusteringBound start, + ClusteringBound end, - boolean includeFirst, boolean hasPreviousBlock, - boolean hasNextBlock) throws IOException + boolean hasNextBlock, + ClusteringPrefix currentFirstName, + ClusteringPrefix nextLastName) throws IOException { // start != null means it's the block covering the beginning of the slice, so it has to be the last block for this slice. assert start == null || !hasNextBlock; http://git-wip-us.apache.org/repos/asf/cassandra/blob/075f4586/test/unit/org/apache/cassandra/io/sstable/LegacySSTableTest.java ---------------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org