multishard_combining_reader: pause *all* EOS'd readers
Previously the last shard reader to reach EOS wasn't paused. This is a mistake and can contribute to causing deadlocks when the number of concurrently active readers on any shard is limited.
This commit is contained in:
@@ -1351,8 +1351,8 @@ future<> multishard_combining_reader::handle_empty_reader_buffer(db::timeout_clo
|
||||
_end_of_stream = true;
|
||||
} else {
|
||||
move_to_next_shard();
|
||||
reader.pause();
|
||||
}
|
||||
reader.pause();
|
||||
return make_ready_future<>();
|
||||
} else if (reader.is_read_ahead_in_progress()) {
|
||||
return reader.fill_buffer(timeout);
|
||||
|
||||
Reference in New Issue
Block a user