From: Ronen Friedman Date: Wed, 26 Feb 2025 15:10:54 +0000 (-0600) Subject: osd/scrub: log scrub-queue advance_time() failures X-Git-Tag: v20.0.0~10^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F62010%2Fhead;p=ceph.git osd/scrub: log scrub-queue advance_time() failures such failures occur when the "Ceph clock" goes backwards, Signed-off-by: Ronen Friedman --- diff --git a/src/osd/scrubber/osd_scrub_sched.cc b/src/osd/scrubber/osd_scrub_sched.cc index 7348bbf46990..a45c817b38bd 100644 --- a/src/osd/scrubber/osd_scrub_sched.cc +++ b/src/osd/scrubber/osd_scrub_sched.cc @@ -92,7 +92,15 @@ std::optional ScrubQueue::pop_ready_entry( }; std::unique_lock lck{jobs_lock}; - to_scrub.advance_time(time_now); + if (!to_scrub.advance_time(time_now)) { + // the clock was not advanced + dout(5) << fmt::format( + ": time now ({}) is earlier than the previous not-before " + "cut-off time", + time_now) + << dendl; + // we still try to dequeue, mainly to handle possible corner cases + } return to_scrub.dequeue_by_pred(eligible_filtr); }