cache: fix aborts if no clustering range is specified

cache_streamed_mutation assumed that at least one clustering range was
specified. That was wrong since the readers are allowed to query just
for a static row (e.g. counter update that modifies only static
columns).

Fixes #2604.
Message-Id: <20170725131220.17467-1-pdziepak@scylladb.com>
This commit is contained in:
Paweł Dziepak
2017-07-25 14:12:18 +01:00
committed by Tomasz Grabiec
parent 1f5a9ecc40
commit 6572f38450

View File

@@ -178,6 +178,10 @@ future<> cache_streamed_mutation::fill_buffer() {
if (!_static_row_done) {
_static_row_done = true;
return process_static_row().then([this] {
if (_ck_ranges_curr == _ck_ranges_end) {
_end_of_stream = true;
return make_ready_future<>();
}
return _lsa_manager.run_in_read_section([this] {
return move_to_current_range();
}).then([this] {