From e7060410f720f792b97d3fd5392cec89ab67c249 Mon Sep 17 00:00:00 2001 From: John Spray Date: Wed, 5 Apr 2017 19:58:36 -0400 Subject: [PATCH] mgr: get fresh maps on second load of Mgr I think we got away with this when Client::init was re-initialising the MonClient, but now that (bogus) stuff isn't happening any more as Client doesn't init/teardown monc/objecter itself. Signed-off-by: John Spray --- src/mgr/Mgr.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mgr/Mgr.cc b/src/mgr/Mgr.cc index f507a35266637..a6f26cbcb8674 100644 --- a/src/mgr/Mgr.cc +++ b/src/mgr/Mgr.cc @@ -359,12 +359,16 @@ void Mgr::shutdown() Mutex::Locker l(lock); finisher.queue(new FunctionContext([&](int) { + monc->sub_unwant("log-info"); + monc->sub_unwant("mgrdigest"); + monc->sub_unwant("fsmap"); // First stop the server so that we're not taking any more incoming // requests server.shutdown(); // after the messenger is stopped, signal modules to shutdown via finisher py_modules.shutdown(); })); + // Then stop the finisher to ensure its enqueued contexts aren't going // to touch references to the things we're about to tear down finisher.wait_for_empty(); -- 2.39.5