From f2986a4400bb73d5ed3a80f626011609976c375a Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Thu, 21 Nov 2019 12:31:16 -0800 Subject: [PATCH] mon/MgrMonitor: blacklist previous instance This wasn't realized as necessary early on in the ceph-mgr development because the mgr didn't interact with RADOS. However, now it is becoming common for plugins to store data there. It's important that the previous instance can no longer interact with RADOS while the new mgr takes over. In particular, this means that the mgr's client sessions with the MDS are automatically evicted once the MDS receives the new OSDMap. This avoids a pesky "unresponsive client" warning in the cluster logs. Fixes: https://tracker.ceph.com/issues/42939 Signed-off-by: Patrick Donnelly --- src/common/options.cc | 8 ++++++++ src/mgr/Mgr.cc | 41 ++++++++++++++++++++++++----------------- src/mon/MgrMap.h | 9 ++++++++- src/mon/MgrMonitor.cc | 29 ++++++++++++++++++++++++++++- src/osdc/Objecter.cc | 6 +++--- src/osdc/Objecter.h | 2 +- 6 files changed, 72 insertions(+), 23 deletions(-) diff --git a/src/common/options.cc b/src/common/options.cc index 4a250a77409..705bca131bc 100644 --- a/src/common/options.cc +++ b/src/common/options.cc @@ -2089,6 +2089,14 @@ std::vector