From: Venky Shankar Date: Thu, 7 Nov 2024 05:17:13 +0000 (+0000) Subject: mds: do not process client metrics message with fast dispatch X-Git-Tag: testing/wip-khiremat-testing-20250422.120708-squid-debug~111^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=f940622df6379951923682cf127f42790028c9ee;p=ceph-ci.git mds: do not process client metrics message with fast dispatch So that the MDS can transition faster to up:active without spending much time in processing metrics message during reconnect. Fixes: http://tracker.ceph.com/issues/68865 Signed-off-by: Venky Shankar (cherry picked from commit ba0d989f9c963b6b8e0e2db474e97b9e00f4616d) --- diff --git a/src/mds/MetricsHandler.cc b/src/mds/MetricsHandler.cc index 9ad10b9d6e6..833d7ef1998 100644 --- a/src/mds/MetricsHandler.cc +++ b/src/mds/MetricsHandler.cc @@ -20,15 +20,6 @@ MetricsHandler::MetricsHandler(CephContext *cct, MDSRank *mds) mds(mds) { } -bool MetricsHandler::ms_can_fast_dispatch2(const cref_t &m) const { - return m->get_type() == CEPH_MSG_CLIENT_METRICS || m->get_type() == MSG_MDS_PING; -} - -void MetricsHandler::ms_fast_dispatch2(const ref_t &m) { - bool handled = ms_dispatch2(m); - ceph_assert(handled); -} - bool MetricsHandler::ms_dispatch2(const ref_t &m) { if (m->get_type() == CEPH_MSG_CLIENT_METRICS && m->get_connection()->get_peer_type() == CEPH_ENTITY_TYPE_CLIENT) { diff --git a/src/mds/MetricsHandler.h b/src/mds/MetricsHandler.h index 0b75b024860..25ee208aa95 100644 --- a/src/mds/MetricsHandler.h +++ b/src/mds/MetricsHandler.h @@ -25,11 +25,6 @@ class MetricsHandler : public Dispatcher { public: MetricsHandler(CephContext *cct, MDSRank *mds); - bool ms_can_fast_dispatch_any() const override { - return true; - } - bool ms_can_fast_dispatch2(const cref_t &m) const override; - void ms_fast_dispatch2(const ref_t &m) override; bool ms_dispatch2(const ref_t &m) override; void ms_handle_connect(Connection *c) override {