From: Ronen Friedman Date: Mon, 24 Oct 2022 13:35:52 +0000 (+0300) Subject: osd/scrub: earlier response to interval changes X-Git-Tag: v18.1.0~686^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=1295b3752c8305cb57f69676beb22de07d575e01;p=ceph.git osd/scrub: earlier response to interval changes Signed-off-by: Ronen Friedman --- diff --git a/src/osd/scrubber/pg_scrubber.cc b/src/osd/scrubber/pg_scrubber.cc index 7fb05d0f0471..fc5a7ec9af29 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}>",