From 52097c4856a3a2e83f51c812e58a4b76a87c9a63 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Sun, 28 Mar 2021 00:55:30 +0300 Subject: [PATCH] Stop flushing when less than min_flusher_count operations are available (unless a trim is forced) --- src/blockstore_flush.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/blockstore_flush.cpp b/src/blockstore_flush.cpp index 944534065..15f3afa31 100644 --- a/src/blockstore_flush.cpp +++ b/src/blockstore_flush.cpp @@ -238,7 +238,8 @@ bool journal_flusher_co::loop() else if (wait_state == 21) goto resume_21; resume_0: - if (!flusher->flush_queue.size() || !flusher->dequeuing) + if (flusher->flush_queue.size() < flusher->min_flusher_count && !flusher->trim_wanted || + !flusher->flush_queue.size() || !flusher->dequeuing) { stop_flusher: if (flusher->trim_wanted > 0 && flusher->journal_trim_counter > 0)