Files
scylladb/test
Botond Dénes 737cc798ca Merge "Add flat_mutation_reader_from_mutation_v2" from Benny Halevy
"
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
2022-04-14 17:23:21 +03:00
..