From 8ca982f403b0c642fbd84a03250e316067bd9c5e Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 14 Mar 2017 10:02:38 -0400 Subject: [PATCH] mgr/MgrClient: do not assert on control-c Signed-off-by: Sage Weil --- src/common/CommandTable.h | 4 ++++ src/mgr/MgrClient.cc | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/common/CommandTable.h b/src/common/CommandTable.h index 6aab1b8c24b1b..e952ebe2f2789 100644 --- a/src/common/CommandTable.h +++ b/src/common/CommandTable.h @@ -93,6 +93,10 @@ public: { commands.erase(tid); } + + void clear() { + commands.clear(); + } }; #endif diff --git a/src/mgr/MgrClient.cc b/src/mgr/MgrClient.cc index cb5a39ade64bd..1defc2c9f0a3a 100644 --- a/src/mgr/MgrClient.cc +++ b/src/mgr/MgrClient.cc @@ -49,6 +49,10 @@ void MgrClient::shutdown() { Mutex::Locker l(lock); + // forget about in-flight commands if we are prematurely shut down + // (e.g., by control-C) + command_table.clear(); + timer.shutdown(); session.reset(); } -- 2.39.5