summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-07-20 08:11:43 -0700
committerSage Weil <sage@inktank.com>2013-07-20 08:11:43 -0700
commitb084a3877f3b585a6b387f42d625b33c9b759435 (patch)
treea1a823e695fdaa19acc4b15c5d8265525075c80c
parent61a298c39c1a6684682e2b749e45a66d073182c8 (diff)
downloadceph-b084a3877f3b585a6b387f42d625b33c9b759435.tar.gz
osd: do not assume we have an osdmap in prepare_to_stop
Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r--src/osd/OSD.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc
index 1ee4c09a63e..695dff240a4 100644
--- a/src/osd/OSD.cc
+++ b/src/osd/OSD.cc
@@ -4730,11 +4730,12 @@ bool OSDService::prepare_to_stop()
if (state != NOT_STOPPING)
return false;
- if (get_osdmap()->is_up(whoami)) {
+ OSDMapRef osdmap = get_osdmap();
+ if (osdmap && osdmap->is_up(whoami)) {
state = PREPARING_TO_STOP;
monc->send_mon_message(new MOSDMarkMeDown(monc->get_fsid(),
- get_osdmap()->get_inst(whoami),
- get_osdmap()->get_epoch(),
+ osdmap->get_inst(whoami),
+ osdmap->get_epoch(),
false
));
utime_t now = ceph_clock_now(g_ceph_context);