mds: make MDS::replay_done clearer

... and add some assertions.

Signed-off-by: John Spray <john.spray@redhat.com>
This commit is contained in:
John Spray 2014-07-21 17:08:46 +01:00
parent e587088918
commit 6832ec041a

View File

@ -1579,17 +1579,22 @@ void MDS::replay_done()
}
if (is_standby_replay()) {
// The replay was done in standby state, and we are still in that state
assert(standby_replaying);
dout(10) << "setting replay timer" << dendl;
timer.add_event_after(g_conf->mds_replay_interval,
new C_MDS_StandbyReplayRestart(this));
return;
}
if (standby_replaying) {
} else if (standby_replaying) {
// The replay was done in standby state, we have now _left_ that state
dout(10) << " last replay pass was as a standby; making final pass" << dendl;
standby_replaying = false;
standby_replay_restart();
return;
} else {
// Not in standby, replay is truly complete
assert(mdlog->get_journaler()->get_read_pos() == mdlog->get_journaler()->get_write_pos());
assert(!is_standby_replay());
}
dout(1) << "making mds journal writeable" << dendl;