From: Kefu Chai Date: Fri, 28 Aug 2020 08:17:53 +0000 (+0800) Subject: mon/Monitor: do not handle MMonMetadata X-Git-Tag: v16.1.0~1246^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f81b82a4d03280d0cd66c11c6d890c61b53eaf3b;p=ceph.git mon/Monitor: do not handle MMonMetadata MMonMetadata is sent to pre-luminous monitors and handled only for backward compatibility with pre-luminous monitors. and luminous is the last release we were still sending this message. but there is no need for pacific to be compatible with pre-luminous monitors because of the +2 policy. so let's stop handle this message in pacific and up. Signed-off-by: Kefu Chai --- diff --git a/src/mon/Monitor.cc b/src/mon/Monitor.cc index 671b07aeb9ac..51d5c12c41e5 100644 --- a/src/mon/Monitor.cc +++ b/src/mon/Monitor.cc @@ -44,7 +44,6 @@ #include "messages/MGenericMessage.h" #include "messages/MMonCommand.h" #include "messages/MMonCommandAck.h" -#include "messages/MMonMetadata.h" #include "messages/MMonSync.h" #include "messages/MMonScrub.h" #include "messages/MMonProbe.h" @@ -4430,9 +4429,6 @@ void Monitor::dispatch_op(MonOpRequestRef op) configmon()->handle_get_config(op); return; - case CEPH_MSG_MON_METADATA: - return handle_mon_metadata(op); - case CEPH_MSG_MON_SUBSCRIBE: /* FIXME: check what's being subscribed, filter accordingly */ handle_subscribe(op); @@ -5263,27 +5259,6 @@ void Monitor::handle_mon_get_map(MonOpRequestRef op) send_latest_monmap(m->get_connection().get()); } -void Monitor::handle_mon_metadata(MonOpRequestRef op) -{ - auto m = op->get_req(); - if (is_leader()) { - dout(10) << __func__ << dendl; - update_mon_metadata(m->get_source().num(), std::move(m->data)); - } -} - -void Monitor::update_mon_metadata(int from, Metadata&& m) -{ - // NOTE: this is now for legacy (kraken or jewel) mons only. - pending_metadata[from] = std::move(m); - - MonitorDBStore::TransactionRef t = paxos->get_pending_transaction(); - bufferlist bl; - encode(pending_metadata, bl); - t->put(MONITOR_STORE_PREFIX, "last_metadata", bl); - paxos->trigger_propose(); -} - int Monitor::load_metadata() { bufferlist bl; diff --git a/src/mon/Monitor.h b/src/mon/Monitor.h index 096cc680e81b..d8db8bf01043 100644 --- a/src/mon/Monitor.h +++ b/src/mon/Monitor.h @@ -692,11 +692,10 @@ public: void handle_command(MonOpRequestRef op); void handle_route(MonOpRequestRef op); - void handle_mon_metadata(MonOpRequestRef op); int get_mon_metadata(int mon, ceph::Formatter *f, std::ostream& err); int print_nodes(ceph::Formatter *f, std::ostream& err); - // Accumulate metadata across calls to update_mon_metadata + // track metadata reported by win_election() std::map mon_metadata; std::map pending_metadata; @@ -932,7 +931,6 @@ private: void extract_save_mon_key(KeyRing& keyring); void collect_metadata(Metadata *m); - void update_mon_metadata(int from, Metadata&& m); int load_metadata(); void count_metadata(const std::string& field, ceph::Formatter *f); void count_metadata(const std::string& field, std::map *out);