From: John Spray Date: Thu, 4 Aug 2016 14:03:51 +0000 (+0100) Subject: mgrc: mark down connections with dead sessions X-Git-Tag: v11.0.1~60^2~25 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c38d4915a98a2e096c85a4e379fb90c67bff0d80;p=ceph.git mgrc: mark down connections with dead sessions Signed-off-by: John Spray --- diff --git a/src/mgr/MgrClient.cc b/src/mgr/MgrClient.cc index 3f32934f707a..5dfb8de77068 100644 --- a/src/mgr/MgrClient.cc +++ b/src/mgr/MgrClient.cc @@ -95,6 +95,7 @@ bool MgrClient::handle_mgr_map(MMgrMap *m) if (session) { ldout(cct, 4) << "Terminating session with " << session->con->get_peer_addr() << dendl; + session->con->mark_down(); delete session; session = nullptr; stats_period = 0; @@ -286,7 +287,7 @@ int MgrClient::start_command(const vector& cmd, const bufferlist& inbl, ldout(cct, 20) << "cmd: " << cmd << dendl; if (session == nullptr) { - derr << "no session, waiting" << dendl; + lderr(cct) << "no session, waiting" << dendl; wait_on_list(waiting_for_session); } @@ -301,6 +302,8 @@ int MgrClient::start_command(const vector& cmd, const bufferlist& inbl, // Leaving fsid argument null because it isn't used. MCommand *m = op->get_message({}); + assert(session); + assert(session->con); session->con->send_message(m); return 0;