// did i just recover?
if ((is_active() || is_clientreplay()) &&
(oldstate == MDSMap::STATE_REJOIN ||
- oldstate == MDSMap::STATE_RECONNECT))
+ oldstate == MDSMap::STATE_RECONNECT))
recovery_done();
if (is_active()) {
dout(10) << "boot_create creating fresh anchortable" << dendl;
anchorserver->reset();
anchorserver->save(fin.new_sub());
+ anchorserver->handle_mds_recovery(whoami);
dout(10) << "boot_create creating fresh snaptable" << dendl;
snapserver->reset();
snapserver->save(fin.new_sub());
+ snapserver->handle_mds_recovery(whoami);
}
fin.activate();
}
finish_contexts(g_ceph_context, waiting_for_active); // kick waiters
}
-
void MDS::recovery_done()
{
dout(1) << "recovery_done -- successful recovery!" << dendl;