]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
osd/scrub: allow auto-repair on operator-initiated scrubs wip-rf-64567-tentacle
authorRonen Friedman <rfriedma@redhat.com>
Thu, 17 Jul 2025 16:59:00 +0000 (11:59 -0500)
committerRonen Friedman <rfriedma@redhat.com>
Fri, 18 Jul 2025 09:03:00 +0000 (04:03 -0500)
Previously, operator-initiated scrubs would not auto-repair, regardless
of the value of the 'osd_scrub_auto_repair' config option.  This was
less confusing to the operator than it could have been, as most
operator commands would in fact cause a regular periodic scrub
to be initiated. However, that quirk is now fixed: operator commands
now trigger 'op-initiated' scrubs. Thus the need for this patch.

The original bug was fixed in https://github.com/ceph/ceph/pull/54615,
but was unfortunately re-introduced later on.
Fixes: https://tracker.ceph.com/issues/72178
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
(cherry picked from commit 97de817ad1c253ee1c7c9c9302981ad2435301b9)

src/osd/scrubber/scrub_job.cc

index 77dcb44efa6b3ea8ca289a7bb9fbea7ad4c94279..da9cbb01820f6ea2e97183e502fd8dce4b542fb0 100644 (file)
@@ -423,5 +423,6 @@ bool ScrubJob::is_autorepair_allowed(urgency_t urgency)
 {
   // note: 'after-repair' scrubs are not allowed to auto-repair
   return urgency == urgency_t::periodic_regular ||
+        urgency == urgency_t::operator_requested ||
         urgency == urgency_t::repairing || urgency == urgency_t::must_repair;
 }