]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/scrub: correct placement for some scheduler-related methods
authorRonen Friedman <rfriedma@redhat.com>
Tue, 19 Sep 2023 14:04:23 +0000 (09:04 -0500)
committerRonen Friedman <rfriedma@redhat.com>
Thu, 21 Sep 2023 10:11:05 +0000 (05:11 -0500)
Moving some member functions to their corresponding files.
Including ScrubQueue::dump_scrubs()
as it was moved in a previous commit,
and some ScrubJob code.

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

index ee82bb5f21696c74290642e5dcf0159ea4430823..05750ecb20b56ce6fc43a666b9d66453f60487b1 100644 (file)
@@ -278,24 +278,6 @@ void OsdScrub::on_config_change()
   }
 }
 
-void ScrubQueue::dump_scrubs(ceph::Formatter* f) const
-{
-  ceph_assert(f != nullptr);
-  std::lock_guard lck(jobs_lock);
-
-  f->open_array_section("scrubs");
-
-  std::for_each(
-      to_scrub.cbegin(), to_scrub.cend(),
-      [&f](const Scrub::ScrubJobRef& j) { j->dump(f); });
-
-  std::for_each(
-      penalized.cbegin(), penalized.cend(),
-      [&f](const Scrub::ScrubJobRef& j) { j->dump(f); });
-
-  f->close_section();
-}
-
 
 // ////////////////////////////////////////////////////////////////////////// //
 // CPU load tracking and related
index 6554069d27164a7f63390fc9dce890a19566ff19..67933e465a3cc11ab7f70e248bd6764748167d92 100644 (file)
@@ -247,17 +247,6 @@ std::string_view ScrubQueue::attempt_res_text(Scrub::schedule_result_t v)
   // g++ (unlike CLANG), requires an extra 'return' here
   return "(unknown)"sv;
 }
-
-std::string_view ScrubJob::qu_state_text(qu_state_t st)
-{
-  switch (st) {
-    case qu_state_t::not_registered: return "not registered w/ OSD"sv;
-    case qu_state_t::registered: return "registered"sv;
-    case qu_state_t::unregistering: return "unregistering"sv;
-  }
-  // g++ (unlike CLANG), requires an extra 'return' here
-  return "(unknown)"sv;
-}
 // clang-format on
 
 std::vector<ScrubTargetId> ScrubQueue::ready_to_scrub(
@@ -450,14 +439,21 @@ void ScrubQueue::scan_penalized(bool forgive_all, utime_t time_now)
   }
 }
 
-void ScrubJob::dump(ceph::Formatter* f) const
+void ScrubQueue::dump_scrubs(ceph::Formatter* f) const
 {
-  f->open_object_section("scrub");
-  f->dump_stream("pgid") << pgid;
-  f->dump_stream("sched_time") << schedule.scheduled_at;
-  f->dump_stream("deadline") << schedule.deadline;
-  f->dump_bool("forced",
-              schedule.scheduled_at == PgScrubber::scrub_must_stamp());
+  ceph_assert(f != nullptr);
+  std::lock_guard lck(jobs_lock);
+
+  f->open_array_section("scrubs");
+
+  std::for_each(
+      to_scrub.cbegin(), to_scrub.cend(),
+      [&f](const Scrub::ScrubJobRef& j) { j->dump(f); });
+
+  std::for_each(
+      penalized.cbegin(), penalized.cend(),
+      [&f](const Scrub::ScrubJobRef& j) { j->dump(f); });
+
   f->close_section();
 }
 
index bf9649c361d54153c0d304d81afc5a22db8b91ed..35071af5fd510c9bc3079bb3c69fe9e1109f7f32 100644 (file)
@@ -2,6 +2,7 @@
 // vim: ts=8 sw=2 smarttab
 
 #include "./scrub_job.h"
+#include "pg_scrubber.h"
 
 using qu_state_t = Scrub::qu_state_t;
 using must_scrub_t = Scrub::must_scrub_t;
@@ -81,3 +82,27 @@ std::ostream& ScrubJob::gen_prefix(std::ostream& out, std::string_view fn) const
 {
   return out << log_msg_prefix << fn << ": ";
 }
+
+// clang-format off
+std::string_view ScrubJob::qu_state_text(qu_state_t st)
+{
+  switch (st) {
+    case qu_state_t::not_registered: return "not registered w/ OSD"sv;
+    case qu_state_t::registered: return "registered"sv;
+    case qu_state_t::unregistering: return "unregistering"sv;
+  }
+  // g++ (unlike CLANG), requires an extra 'return' here
+  return "(unknown)"sv;
+}
+// clang-format on
+
+void ScrubJob::dump(ceph::Formatter* f) const
+{
+  f->open_object_section("scrub");
+  f->dump_stream("pgid") << pgid;
+  f->dump_stream("sched_time") << schedule.scheduled_at;
+  f->dump_stream("deadline") << schedule.deadline;
+  f->dump_bool("forced",
+              schedule.scheduled_at == PgScrubber::scrub_must_stamp());
+  f->close_section();
+}