}
}
+void OSDMonitor::on_shutdown()
+{
+ dout(10) << __func__ << dendl;
+ map<epoch_t, list<PaxosServiceMessage*> >::iterator p = waiting_for_map.begin();
+ while (p != waiting_for_map.end()) {
+ while (!p->second.empty()) {
+ Message *m = p->second.front();
+ dout(20) << " discarding " << m << " " << *m << dendl;
+ m->put();
+ p->second.pop_front();
+ }
+ waiting_for_map.erase(p++);
+ }
+}
+
void OSDMonitor::update_logger()
{
dout(10) << "update_logger" << dendl;
void encode_pending(MonitorDBStore::Transaction *t);
virtual void encode_full(MonitorDBStore::Transaction *t);
void on_active();
+ void on_shutdown();
/**
* do not let paxosservice periodically stash full osdmaps, or we will break our
*/
virtual void on_active() { }
+ /**
+ * This is called when we are shutting down
+ */
+ virtual void on_shutdown() {}
+
/**
* this is called when activating on the leader
*