mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-21 00:50:35 +00:00
- Introduce a simpler substitute for `flat_mutation_reader`-resulting-from-a-downgrade that is adequate for the remaining uses but is _not_ a full-fledged reader (does not redirect all logic to an `::impl`, does not buffer, does not really have `::peek()`), so hopefully carries a smaller performance overhead. The name `mutation_fragment_v1_stream` is kind of a mouthful but it's the best I have - (not tests) Use the above instead of `downgrade_to_v1()` - Plug it in as another option in `mutation_source`, in and out - (tests) Substitute deliberate uses of `downgrade_to_v1()` with `mutation_fragment_v1_stream()` - (tests) Replace all the previously-overlooked occurrences of `mutation_source::make_reader()` with `mutation_source::make_reader_v2()`, or with `mutation_source::make_fragment_v1_stream()` where deliberate or still required (see below) - (tests) This series still leaves some tests with `mutation_fragment_v1_stream` (i.e. at v1) where not called for by the test logic per se, because another missing piece of work is figuring out how to properly feed `mutation_fragment_v2` (i.e. range tombstone changes) to `mutation_partition`. While that is not done (and I think it's better to punt on it in this PR), we have to produce `mutation_fragment` instances in tests that `apply()` them to `mutation_partition`, thus we still use downgraded readers in those tests - Remove the `flat_mutation_reader` class and things downstream of it Fixes #10586 Closes #10654 * github.com:scylladb/scylla: fix "ninja dev-headers" flat_mutation_reader ist tot tests: downgrade_to_v1() -> mutation_fragment_v1_stream() tests: flat_reader_assertions: refactor out match_compacted_mutation() tests: ms.make_reader() -> ms.make_fragment_v1_stream() repair/row_level: mutation_fragment_v1_stream() instead of downgrade_to_v1() stream_transfer_task: mutation_fragment_v1_stream() instead of downgrade_to_v1() sstables_loader: mutation_fragment_v1_stream() instead of downgrade_to_v1() mutation_source: add ::make_fragment_v1_stream() introduce mutation_fragment_v1_stream tests: ms.make_reader() -> ms.make_reader_v2() tests: remove test_downgrade_to_v1_clear_buffer() mutation_source_test: fix indentation tests: remove some redundant calls to downgrade_to_v1() tests: remove some to-become-pointless ms.make_reader()-using tests tests: remove some to-become-pointless reader downgrade tests