From 83b9449c56b586ee5d0b0da805b9a30805be3f5f Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Tue, 23 May 2017 16:54:57 +0800 Subject: [PATCH] mon/MonClient: cancel pending commands on shutdown Fixes: http://tracker.ceph.com/issues/20051 Signed-off-by: Sage Weil Signed-off-by: Kefu Chai --- src/mon/MonClient.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/mon/MonClient.cc b/src/mon/MonClient.cc index b926076961c..73d1a110d02 100644 --- a/src/mon/MonClient.cc +++ b/src/mon/MonClient.cc @@ -408,7 +408,10 @@ void MonClient::shutdown() delete version_requests.begin()->second; version_requests.erase(version_requests.begin()); } - + while (!mon_commands.empty()) { + auto tid = mon_commands.begin()->first; + _cancel_mon_command(tid); + } while (!waiting_for_session.empty()) { ldout(cct, 20) << __func__ << " discarding pending message " << *waiting_for_session.front() << dendl; waiting_for_session.front()->put(); -- 2.39.5