summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/osd/OSD.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc
index 26a601ed91a..5c8457ac475 100644
--- a/src/osd/OSD.cc
+++ b/src/osd/OSD.cc
@@ -2417,6 +2417,13 @@ void OSD::handle_osd_ping(MOSDPing *m)
_share_map_outgoing(from, con.get());
}
}
+ } else if (curmap->get_down_at(from) > m->map_epoch) {
+ // tell them they have died
+ Message *r = new MOSDPing(monc->get_fsid(),
+ curmap->get_epoch(),
+ MOSDPing::YOU_DIED,
+ m->stamp);
+ m->get_connection()->get_messenger()->send_message(r, m->get_connection());
}
}
break;