From 1295b3752c8305cb57f69676beb22de07d575e01 Mon Sep 17 00:00:00 2001 From: Ronen Friedman Date: Mon, 24 Oct 2022 16:35:52 +0300 Subject: [PATCH] osd/scrub: earlier response to interval changes Signed-off-by: Ronen Friedman --- src/osd/scrubber/pg_scrubber.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/osd/scrubber/pg_scrubber.cc b/src/osd/scrubber/pg_scrubber.cc index 7fb05d0f047..fc5a7ec9af2 100644 --- a/src/osd/scrubber/pg_scrubber.cc +++ b/src/osd/scrubber/pg_scrubber.cc @@ -517,6 +517,17 @@ void PgScrubber::on_primary_change( m_osds->get_scrub_services().remove_from_osd_queue(m_scrub_job); } + // is there an interval change we should respond to? + if (is_primary() && is_scrub_active()) { + if (m_interval_start < m_pg->get_same_interval_since()) { + dout(10) << fmt::format( + "{}: interval changed ({} -> {}). Aborting active scrub.", + __func__, m_interval_start, m_pg->get_same_interval_since()) + << dendl; + scrub_clear_state(); + } + } + dout(10) << fmt::format( "{} (from {} {}): {}. <{:.5}>&<{:.10}> --> <{:.5}>&<{:.14}>", -- 2.47.3