From 2f0b050fa2f3f4862ba2d78aaed7d641a4d303a9 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 13 Jul 2018 17:00:59 -0500 Subject: [PATCH] mon/MonClient: change pending_cons to addrvec-based map Signed-off-by: Sage Weil --- src/mon/MonClient.cc | 20 ++++++++++++-------- src/mon/MonClient.h | 4 ++-- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/mon/MonClient.cc b/src/mon/MonClient.cc index b762b892cb49b..f4587b777ef0d 100644 --- a/src/mon/MonClient.cc +++ b/src/mon/MonClient.cc @@ -662,13 +662,13 @@ void MonClient::_reopen_session(int rank) MonConnection& MonClient::_add_conn(unsigned rank, uint64_t global_id) { - auto peer = monmap.get_addr(rank); - auto conn = messenger->connect_to_mon(monmap.get_addrs(rank)); + auto peer = monmap.get_addrs(rank); + auto conn = messenger->connect_to_mon(peer); MonConnection mc(cct, conn, global_id); auto inserted = pending_cons.insert(make_pair(peer, move(mc))); ldout(cct, 10) << "picked mon." << monmap.get_name(rank) << " con " << conn - << " addr " << conn->get_peer_addr() + << " addr " << peer << dendl; return inserted.first->second; } @@ -707,19 +707,23 @@ bool MonClient::ms_handle_reset(Connection *con) return false; if (_hunting()) { - if (pending_cons.count(con->get_peer_addr())) { - ldout(cct, 10) << __func__ << " hunted mon " << con->get_peer_addr() << dendl; + if (pending_cons.count(con->get_peer_addrs())) { + ldout(cct, 10) << __func__ << " hunted mon " << con->get_peer_addrs() + << dendl; } else { - ldout(cct, 10) << __func__ << " stray mon " << con->get_peer_addr() << dendl; + ldout(cct, 10) << __func__ << " stray mon " << con->get_peer_addrs() + << dendl; } return true; } else { if (active_con && con == active_con->get_con()) { - ldout(cct, 10) << __func__ << " current mon " << con->get_peer_addr() << dendl; + ldout(cct, 10) << __func__ << " current mon " << con->get_peer_addrs() + << dendl; _reopen_session(); return false; } else { - ldout(cct, 10) << "ms_handle_reset stray mon " << con->get_peer_addr() << dendl; + ldout(cct, 10) << "ms_handle_reset stray mon " << con->get_peer_addrs() + << dendl; return true; } } diff --git a/src/mon/MonClient.h b/src/mon/MonClient.h index 83561803e3b38..6ac86687d09b2 100644 --- a/src/mon/MonClient.h +++ b/src/mon/MonClient.h @@ -152,7 +152,7 @@ private: Messenger *messenger; std::unique_ptr active_con; - std::map pending_cons; + std::map pending_cons; EntityName entity_name; @@ -219,7 +219,7 @@ private: void _add_conns(uint64_t global_id); void _send_mon_message(Message *m); - std::map::iterator _find_pending_con( + std::map::iterator _find_pending_con( const ConnectionRef& con) { for (auto i = pending_cons.begin(); i != pending_cons.end(); ++i) { if (i->second.get_con() == con) { -- 2.39.5