Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge 'multishard_mutation_query: add tablets support' from Botond Dénes
When reading a list of ranges with tablets, we don't need a multishard reader. Instead, we intersect the range list with the local nodes tablet ranges, then read each range from the respective shard. The individual ranges are read sequentially, with database::query[_mutations](), merging the results into a single instance. This makes the code simple. For tablets multishard_mutation_query.cc is no longer on the hot paths, range scans on tables with tablets fork off to a different code-path in the coordinator. The only code using multishard_mutation_query.cc are forced, replica-local scans, like those used by SELECT * FROM MUTATION_FRAGMENTS(). These are mainly used for diagnostics and tests, so we optimize for simplicity, not performance. Fixes: #16484 Closes #16802 * github.com:scylladb/scylladb: test/cql-pytest: remove skip_with_tablets fixture test/cql-pytest: test_select_from_mutation_fragments.py parameterize tests test/cql-pytest: test_select_from_mutation_fragments.py: remove skip_with_tablets multishard_mutation_query: add tablets support multishard_mutation_query: remove compaction-state from result-builder factory multishard_mutation_query: do_query(): return foreign_ptr<lw_shared_ptr<result>> mutation_query: reconcilable_result: add merge_disjoint() locator: introduce tablet_range_spliter dht/i_partitioner: to_partition_range(): don't assume input is fully inclusive interval: add before() overload which takes another interval
- Loading branch information
Showing
11 changed files
with
492 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.