ldout(cct, 1) << "starting objecter" << dendl;
err = -ENOMEM;
- objecter = new Objecter(cct, messenger, &monclient, &osdmap, lock, timer,
+ objecter = new Objecter(cct, messenger, &monclient, &osdmap,
cct->_conf->rados_mon_op_timeout,
cct->_conf->rados_osd_op_timeout);
if (!objecter)
}
messenger->set_myname(entity_name_t::CLIENT(monclient.get_global_id()));
- objecter->init_unlocked();
+ objecter->set_client_incarnation(0);
+ objecter->init();
lock.Lock();
timer.init();
- objecter->set_client_incarnation(0);
- objecter->init_locked();
monclient.renew_subs();
finisher.start();
bool need_objecter = false;
if (objecter && state == CONNECTED) {
need_objecter = true;
- objecter->shutdown_locked();
}
state = DISCONNECTED;
instance_id = 0;
lock.Unlock();
monclient.shutdown();
if (need_objecter)
- objecter->shutdown_unlocked();
+ objecter->shutdown();
if (messenger) {
messenger->shutdown();
messenger->wait();