]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/mgr/client: add Client::retry_interval() 62028/head
authorMatan Breizman <mbreizma@redhat.com>
Mon, 3 Mar 2025 11:59:53 +0000 (11:59 +0000)
committerMatan Breizman <mbreizma@redhat.com>
Wed, 5 Mar 2025 12:26:25 +0000 (12:26 +0000)
Could be useful in the future, for now a mere refactor.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
src/crimson/mgr/client.cc
src/crimson/mgr/client.h

index 9a9bbbbea99de5c7877c269c6fb75633e71b016d..6c299f94727c1108052c18de36b0ad109a4e8ab5 100644 (file)
@@ -133,6 +133,17 @@ void Client::ms_handle_reset(crimson::net::ConnectionRef c, bool /* is_replace *
   });
 }
 
+seastar::future<> Client::retry_interval()
+{
+  LOG_PREFIX(Client::retry_interval);
+  auto retry_interval = std::chrono::duration<double>(
+    local_conf().get_val<double>("mgr_connect_retry_interval"));
+  auto a_while = std::chrono::duration_cast<seastar::steady_clock_type::duration>(
+    retry_interval);
+  DEBUGDPP("reconnecting in {} seconds", *this, retry_interval);
+  co_await seastar::sleep(a_while);
+}
+
 seastar::future<> Client::reconnect()
 {
   LOG_PREFIX(Client::reconnect);
@@ -150,12 +161,7 @@ seastar::future<> Client::reconnect()
     WARNDPP("No active mgr available yet", *this);
     co_return;
   }
-  auto retry_interval = std::chrono::duration<double>(
-    local_conf().get_val<double>("mgr_connect_retry_interval"));
-  auto a_while = std::chrono::duration_cast<seastar::steady_clock_type::duration>(
-    retry_interval);
-  DEBUGDPP("reconnecting in {} seconds", *this, retry_interval);
-  co_await seastar::sleep(a_while);
+  co_await retry_interval();
 
   auto peer = mgrmap.get_active_addrs().pick_addr(msgr.get_myaddr().get_type());
   if (peer == entity_addr_t{}) {
index aad1f820e7b295bc2f9662175da091c58162e005..76f2dbc85a15874a17aa6123a6db0201a3925bb5 100644 (file)
@@ -56,6 +56,7 @@ private:
   seastar::future<> handle_mgr_conf(crimson::net::ConnectionRef conn,
                                    Ref<MMgrConfigure> m);
   seastar::future<> reconnect();
+  seastar::future<> retry_interval();
 
   void print(std::ostream&) const;
   friend std::ostream& operator<<(std::ostream& out, const Client& client);