mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-31 03:56:42 +00:00
" After the recent conversion of the row-cache, two v1 mutation sources remained: the memtable and the kl sstable reader. This series converts both to a native v2 implementation. The conversion is shallow: both continue to read and process the underlying (v1) data in v1, the fragments are converted to v2 right before being pushed to the reader's buffer. This conversion is simple, surgical and low-risk. It is also better than the upgrade_to_v2() used previously. Following this, the remaining v1 reader implementations are removed, with the exception of the downgrade_to_v1(), which is the only one left at this point. Removing this requires converting all mutation sinks to accept a v2 stream. upgrade_to_v2() is now not used in any production code. It is still needed to properly test downgrade_to_v1() (which is till used), so we can't remove it yet. Instead it hidden as a private method of mutation_source. This still allows for the above mentioned testing to continue, while preventing anyone from being tempted to introduce new usage. tests: https://jenkins.scylladb.com/job/releng/job/Scylla-CI/191 " * 'convert-remaining-v1-mutation-sources/v2' of https://github.com/denesb/scylla: readers: make upgrade_to_v2() private test/lib/mutation_source_test: remove upgrade_to_v2 tests readers: remove v1 forwardable reader readers: remove v1 empty_reader readers: remove v1 delegating_reader sstables/kl: make reader impl v2 native sstables/kl: return v2 reader from factory methods sstables: move mp_row_consumer_reader_k_l to kl/reader.cc partition_snapshot_reader: convert implementation to native v2 mutation_fragment_v2: range_tombstone_change: add minimal_memory_usage()