diff options
Diffstat (limited to 'dev-db/scylla/files/3.1.2-fix-read-amplification.patch')
-rw-r--r-- | dev-db/scylla/files/3.1.2-fix-read-amplification.patch | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/dev-db/scylla/files/3.1.2-fix-read-amplification.patch b/dev-db/scylla/files/3.1.2-fix-read-amplification.patch new file mode 100644 index 0000000..c0dceef --- /dev/null +++ b/dev-db/scylla/files/3.1.2-fix-read-amplification.patch @@ -0,0 +1,13 @@ +diff --git a/table.cc b/table.cc +index eec65689f2..596c312854 100644 +--- a/table.cc ++++ b/table.cc +@@ -2518,7 +2518,7 @@ future<row_locker::lock_holder> table::do_push_view_replica_updates(const schema + std::move(slice), + std::move(m), + [base, views = std::move(views), lock = std::move(lock), this, timeout, source = std::move(source), &io_priority] (auto& pk, auto& slice, auto& m) mutable { +- auto reader = source.make_reader(base, pk, slice, io_priority); ++ auto reader = source.make_reader(base, pk, slice, io_priority, nullptr, streamed_mutation::forwarding::no, mutation_reader::forwarding::no); + return this->generate_and_propagate_view_updates(base, std::move(views), std::move(m), std::move(reader)).then([lock = std::move(lock)] () mutable { + // return the local partition/row lock we have taken so it + // remains locked until the caller is done modifying this |