]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
osd/scrub: fix scheduled_at for distinct urgencies
authorRonen Friedman <rfriedma@redhat.com>
Mon, 9 Sep 2024 06:20:03 +0000 (01:20 -0500)
committerRonen Friedman <rfriedma@redhat.com>
Mon, 9 Sep 2024 06:43:42 +0000 (01:43 -0500)
Now that both 'after repair' scrubs and 'repair after errors'
scrubs each have their own urgency, we no longer need to
set the scheduled_at to a magic, before everything else,
value.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
src/osd/scrubber/pg_scrubber.cc

index 827446743db52c7d3dc0955b1ee483f194a55ae8..05dd78baff3c7f0297da7f5ea9d6d186d12cec0d 100644 (file)
@@ -670,8 +670,9 @@ void PgScrubber::recovery_completed()
     m_osds->get_scrub_services().dequeue_target(m_pg_id, scrub_level_t::deep);
     auto& trgt = m_scrub_job->get_target(scrub_level_t::deep);
     trgt.up_urgency_to(urgency_t::after_repair);
-    trgt.sched_info.schedule.scheduled_at = {0, 0};
-    trgt.sched_info.schedule.not_before = ceph_clock_now();
+    const auto clock_now = ceph_clock_now();
+    trgt.sched_info.schedule.scheduled_at = clock_now;
+    trgt.sched_info.schedule.not_before = clock_now;
     m_osds->get_scrub_services().enqueue_target(trgt);
   }
 }
@@ -695,8 +696,9 @@ void PgScrubber::request_rescrubbing(requested_scrub_t& request_flags)
   request_flags.need_auto = true;
   auto& trgt = m_scrub_job->get_target(scrub_level_t::deep);
   trgt.up_urgency_to(urgency_t::repairing);
-  trgt.sched_info.schedule.scheduled_at = {0, 0};
-  trgt.sched_info.schedule.not_before = ceph_clock_now();
+  const auto clock_now = ceph_clock_now();
+  trgt.sched_info.schedule.scheduled_at = clock_now;
+  trgt.sched_info.schedule.not_before = clock_now;
 }