From: tancz1 Date: Tue, 26 Oct 2021 09:25:20 +0000 (+0800) Subject: osd: fix 'ceph osd stop ' doesn't take effect X-Git-Tag: v17.1.0~505^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d595c95ef6c3dc34b8389ff4270639ff1550d269;p=ceph.git osd: fix 'ceph osd stop ' doesn't take effect when the osd state is in the non-active state, the osd daemon can be stopped. Fixes: https://tracker.ceph.com/issues/53039 Signed-off-by: tan changzhi <544463199@qq.com> --- diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 0d8050565636..67664389c879 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -8341,6 +8341,9 @@ void OSD::_committed_osd_maps(epoch_t first, epoch_t last, MOSDMap *m) reset_heartbeat_peers(true); } } + } else if (osdmap->get_epoch() > 0 && osdmap->is_stop(whoami)) { + derr << "map says i am stopped by admin. shutting down." << dendl; + do_shutdown = true; } map_lock.unlock();