There is no need to call dht::split_ranges_to_shards to split the token range into <shard> : <a lot of small ranges> mapping and create a flat mutation reader with a lot of small ranges. Because: 1) The flat mutation reader on each shard only returns data belongs to this local shard, there is no correctness issue if we do not split and feed the sub ranges only belongs to this local shard. 2) With murmur3_partitioner_ignore_msb_bits = 12, it is almost certain that given a token range, all the shards will have data for the range anyway. Even if we ask all the shards to work on the token range and some of the shards have no data for it, it is fine. We simply send no data from this shard. Tests: update_cluster_layout_tests.py Message-Id: <ac00cd21d6156c47b74451dd415d627481e48212.1526864222.git.asias@scylladb.com>
8.0 KiB
8.0 KiB