In _reset() we call Paxos::restart(), which waits for commit completion,
and assumes the state hasn't been twiddled yet.
Signed-off-by: Sage Weil <sage@redhat.com>
{
dout(10) << __func__ << dendl;
- assert(state == STATE_ELECTING ||
- state == STATE_PROBING);
-
cancel_probe_timeout();
timecheck_finish();
void Monitor::join_election()
{
dout(10) << __func__ << dendl;
+ _reset();
state = STATE_ELECTING;
logger->inc(l_mon_num_elections);
-
- _reset();
}
void Monitor::start_election()
{
dout(10) << "start_election" << dendl;
- state = STATE_ELECTING;
_reset();
+ state = STATE_ELECTING;
logger->inc(l_mon_num_elections);
logger->inc(l_mon_election_call);