ceph config set global mon_warn_on_pool_pg_num_not_power_of_two false
+* The format of MDSs in `ceph fs dump` has changed.
+
* The ``pg_autoscale_mode`` is now set to ``on`` by default for newly
created pools, which means that Ceph will automatically manage the
number of PGs. To change this behavior, or to learn more about PG
``.`` in their name.
Note that this only applies to configuration options in the
- monitor's database--config file parsing is not affected.
\ No newline at end of file
+ monitor's database--config file parsing is not affected.
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;
}
}
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(std::list<mds_info_t*>& ls)
}
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;
}
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;
return out;
}
+inline std::ostream& operator<<(std::ostream& o, const MDSMap::mds_info_t& info) {
+ info.dump(o);
+ return o;
+}
+
#endif