commitlog: use commitlog IO scheduling class for segment zeroing

There may be other commitlog writes waiting for zeroing to complete, so
not using proper scheduling class causes priority inversion.

Fixes #5858.

Message-Id: <20200220102939.30769-2-gleb@scylladb.com>
(cherry picked from commit 6a78cc9e31)
This commit is contained in:
Gleb Natapov
2020-02-20 12:29:39 +02:00
committed by Avi Kivity
parent 5840eb602a
commit 83105efba8

View File

@@ -1316,7 +1316,7 @@ future<db::commitlog::segment_manager::sseg_ptr> db::commitlog::segment_manager:
v.emplace_back(iovec{ buf.get_write(), s});
m += s;
}
return f.dma_write(max_size - rem, std::move(v)).then([&rem](size_t s) {
return f.dma_write(max_size - rem, std::move(v), service::get_local_commitlog_priority()).then([&rem](size_t s) {
rem -= s;
return stop_iteration::no;
});