]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: define stream operator for mds_info_t
authorPatrick Donnelly <pdonnell@redhat.com>
Wed, 6 Nov 2019 03:34:41 +0000 (19:34 -0800)
committerVenky Shankar <vshankar@redhat.com>
Thu, 26 Mar 2020 02:45:13 +0000 (22:45 -0400)
This also cleans up the output to be more readable/useful in debug
output.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 1c56632e88a126d0eac75235d9a9716833cba6b7)

 Conflicts:
PendingReleaseNotes

Fix minor conflict in PendingReleaseNotes.

PendingReleaseNotes
src/mds/FSMap.cc
src/mds/MDSMap.cc
src/mds/MDSMap.h

index 0376f3caf05d0ad35ff65b88a7ad3391c61de282..a48aee634ab4c94bd85adda87a4aeaf1f368367a 100644 (file)
@@ -13,3 +13,5 @@
   the upgrade::
 
     ceph osd pool set <pool-name> pg_autoscale_mode warn
+
+* The format of MDSs in `ceph fs dump` has changed.
index e395f2dcbcc8ef3a691d8dc526839ed499acb3fb..cce68614cbdba166dc5776fa1bcb0017efe03422 100644 (file)
@@ -111,9 +111,8 @@ void FSMap::print(ostream& out) const
     out << "Standby daemons:" << std::endl << " " << std::endl;
   }
 
-  for (const auto &p : standby_daemons) {
-    p.second.print_summary(out);
-    out << std::endl;
+  for (const auto& p : standby_daemons) {
+    out << p.second << std::endl;
   }
 }
 
index 4b213cf704381617056ab837793bc614ae57a786..b792ca8e684d179b553a16a1ea1de367c74bbb36 100644 (file)
@@ -92,24 +92,21 @@ void MDSMap::mds_info_t::dump(Formatter *f) const
   f->dump_unsigned("flags", flags);
 }
 
-void MDSMap::mds_info_t::print_summary(ostream &out) const
+void MDSMap::mds_info_t::dump(std::ostream& o) const
 {
-  out << global_id << ":\t"
-      << addrs
-      << " '" << name << "'"
-      << " mds." << rank
-      << "." << inc
-      << " " << ceph_mds_state_name(state)
-      << " seq " << state_seq;
+  o << "[mds." << name << "{" <<  rank << ":" << global_id << "}"
+       << " state " << ceph_mds_state_name(state)
+       << " seq " << state_seq;
   if (laggy()) {
-    out << " laggy since " << laggy_since;
+    o << " laggy since " << laggy_since;
   }
   if (!export_targets.empty()) {
-    out << " export_targets=" << export_targets;
+    o << " export targets " << export_targets;
   }
   if (is_frozen()) {
-    out << " frozen";
+    o << " frozen";
   }
+  o << " addr " << addrs << "]";
 }
 
 void MDSMap::mds_info_t::generate_test_instances(list<mds_info_t*>& ls)
@@ -239,14 +236,10 @@ void MDSMap::print(ostream& out) const
   }
 
   for (const auto &p : foo) {
-    const mds_info_t& info = mds_info.at(p.second);
-    info.print_summary(out);
-    out << "\n";
+    out << mds_info.at(p.second) << "\n";
   }
 }
 
-
-
 void MDSMap::print_summary(Formatter *f, ostream *out) const
 {
   map<mds_rank_t,string> by_rank;
index 5ba266a4294f6d3d68847b221b73e9242f0d9c19..80ebbbf7d59c8c52db79e6d76f5a4562d478674b 100644 (file)
@@ -138,7 +138,7 @@ public:
     }
     void decode(bufferlist::const_iterator& p);
     void dump(Formatter *f) const;
-    void print_summary(ostream &out) const;
+    void dump(std::ostream&) const;
 
     // The long form name for use in cluster log messages`
     std::string human_name() const;
@@ -680,4 +680,9 @@ inline ostream& operator<<(ostream &out, const MDSMap &m) {
   return out;
 }
 
+inline std::ostream& operator<<(std::ostream& o, const MDSMap::mds_info_t& info) {
+  info.dump(o);
+  return o;
+}
+
 #endif