db,view: use chunked vector for view affected ranges

There were large allocation reportsa from vectors used for
calculating affected ranges. In order to reduce the pressure
on the allocator, chunked vector is used for storing intermediate
results.
This commit is contained in:
Piotr Sarna
2021-06-14 11:23:12 +02:00
parent fbc83d5ac6
commit 3592d9b36e

View File

@@ -1058,8 +1058,8 @@ query::clustering_row_ranges calculate_affected_clustering_ranges(const schema&
const mutation_partition& mp,
const std::vector<view_and_base>& views,
gc_clock::time_point now) {
std::vector<nonwrapping_range<clustering_key_prefix_view>> row_ranges;
std::vector<nonwrapping_range<clustering_key_prefix_view>> view_row_ranges;
utils::chunked_vector<nonwrapping_range<clustering_key_prefix_view>> row_ranges;
utils::chunked_vector<nonwrapping_range<clustering_key_prefix_view>> view_row_ranges;
clustering_key_prefix_view::tri_compare cmp(base);
if (mp.partition_tombstone() || !mp.row_tombstones().empty()) {
for (auto&& v : views) {