]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: formatter for ObjectRecoveryProgress
authorRonen Friedman <rfriedma@redhat.com>
Thu, 3 Aug 2023 15:28:31 +0000 (10:28 -0500)
committerRonen Friedman <rfriedma@redhat.com>
Tue, 15 Aug 2023 12:32:46 +0000 (07:32 -0500)
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
src/osd/osd_types.cc
src/osd/osd_types.h
src/osd/osd_types_fmt.h

index 5a1c551d8e16298cb5a8f273cf4f5dc02fb458ff..4aada4fa8497b093495b3ce9f21f6b549ed0fc1a 100644 (file)
@@ -6542,7 +6542,7 @@ void ObjectRecoveryProgress::decode(ceph::buffer::list::const_iterator &bl)
 
 ostream &operator<<(ostream &out, const ObjectRecoveryProgress &prog)
 {
-  return prog.print(out);
+  return out << prog.fmt_print();
 }
 
 void ObjectRecoveryProgress::generate_test_instances(
@@ -6563,14 +6563,16 @@ void ObjectRecoveryProgress::generate_test_instances(
 
 ostream &ObjectRecoveryProgress::print(ostream &out) const
 {
-  return out << "ObjectRecoveryProgress("
-            << ( first ? "" : "!" ) << "first, "
-            << "data_recovered_to:" << data_recovered_to
-            << ", data_complete:" << ( data_complete ? "true" : "false" )
-            << ", omap_recovered_to:" << omap_recovered_to
-            << ", omap_complete:" << ( omap_complete ? "true" : "false" )
-            << ", error:" << ( error ? "true" : "false" )
-            << ")";
+  return out << fmt_print();
+}
+
+std::string ObjectRecoveryProgress::fmt_print() const {
+  return fmt::format(
+      "ObjectRecoveryProgress({}first, data_recovered_to: {}, "
+      "data_complete: {}, omap_recovered_to: {}, omap_complete: "
+      "{}, error: {})",
+      (first ? "" : "!"), data_recovered_to, data_complete, omap_recovered_to,
+      omap_complete, error);
 }
 
 void ObjectRecoveryProgress::dump(Formatter *f) const
index 7c7884404c01abf588413b71b638341653fc8dd8..b1d1cdbffdde1f188c3804f40328eb716a92558f 100644 (file)
@@ -6012,17 +6012,14 @@ WRITE_CLASS_ENCODER_FEATURES(ObjectRecoveryInfo)
 std::ostream& operator<<(std::ostream& out, const ObjectRecoveryInfo &inf);
 
 struct ObjectRecoveryProgress {
-  uint64_t data_recovered_to;
+  uint64_t data_recovered_to{0};
   std::string omap_recovered_to;
-  bool first;
-  bool data_complete;
-  bool omap_complete;
-  bool error = false;
+  bool first{true};
+  bool data_complete{false};
+  bool omap_complete{false};
+  bool error{false};
 
-  ObjectRecoveryProgress()
-    : data_recovered_to(0),
-      first(true),
-      data_complete(false), omap_complete(false) { }
+  ObjectRecoveryProgress() {}
 
   bool is_complete(const ObjectRecoveryInfo& info) const {
     return (data_recovered_to >= (
@@ -6040,6 +6037,7 @@ struct ObjectRecoveryProgress {
   void encode(ceph::buffer::list &bl) const;
   void decode(ceph::buffer::list::const_iterator &bl);
   std::ostream &print(std::ostream &out) const;
+  std::string fmt_print() const;
   void dump(ceph::Formatter *f) const;
 };
 WRITE_CLASS_ENCODER(ObjectRecoveryProgress)
index f6b38b02939790996ea3a4e854cbf703672e0712..486b7456ac5c8836bcd7363eeadd271c972ddf08 100644 (file)
@@ -329,7 +329,6 @@ struct fmt::formatter<ScrubMap> {
 };
 
 #if FMT_VERSION >= 90000
-template <> struct fmt::formatter<ObjectRecoveryProgress> : fmt::ostream_formatter {};
 template <> struct fmt::formatter<PastIntervals> : fmt::ostream_formatter {};
 template <> struct fmt::formatter<pg_log_op_return_item_t> : fmt::ostream_formatter {};
 template <> struct fmt::formatter<watch_info_t> : fmt::ostream_formatter {};