mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-24 16:52:12 +00:00
" Optimize consuming from a single partition. This gives us significant improvement with single, small mutations, as shown with perf_mutation_readers, compared to the vector-based flat_mutation_reader_from_mutations_v2. These are expected to be common on the write path, and can be optimized for view building. results from: perf_mutation_readers -c1 --random-seed=840478750 (userspace cpu-frequency governer, 2.2GHz) test iterations median mad min max Before: combined.one_row 720118 825.668ns 1.020ns 824.648ns 827.750ns After: combined.one_mutation 881482 751.157ns 0.397ns 750.211ns 751.912ns combined.one_row 843270 756.553ns 0.303ns 755.889ns 757.911ns The grand plan is to follow up with make_flat_mutation_reader_from_frozen_mutation_v2 so that we can read directly from either a mutation or frozen_mutation without having to unfreeze it e.g. in table::push_view_replica_updates. Test: unit(dev) Perf: perf_mutation_readers(release) " * tag 'flat_mutation_reader_from_mutation-v3' of https://github.com/bhalevy/scylla: perf: perf_mutation_readers: add one_mutation case test: mutation_query_test: make make_source static mutation readers: refactor make_flat_mutation_reader_from_mutation*_v2 mutation readers: add make_flat_mutation_reader_from_mutation_v2 readers: delete slice_mutation.hh test: flat_mutation_reader_test: mock_consumer: add debug logging test: flat_mutation_reader_test: mock_consumer: make depth counter signed