default:
{
OpRequestRef op = op_tracker.create_request<OpRequest, Message*>(m);
- op->mark_event("waiting_for_osdmap");
// no map? starting up?
if (!osdmap) {
dout(7) << "no OSDMap, not booted" << dendl;
+ logger->inc(l_osd_waiting_for_map);
waiting_for_osdmap.push_back(op);
+ op->mark_delayed("no osdmap");
break;
}
if (!waiting_for_map.empty()) {
// preserve ordering
waiting_for_map.push_back(op);
+ op->mark_delayed("waiting_for_map not empty");
return;
}
if (op_must_wait_for_map(get_osdmap_with_maplock()->get_epoch(), op)) {
waiting_for_map.push_back(op);
+ op->mark_delayed("op must wait for map");
return;
}
op->mark_queued_for_pg();
<< " flushes_in_progress pending "
<< "waiting for active on " << op << dendl;
waiting_for_peered.push_back(op);
+ op->mark_delayed("waiting for peered");
return;
}
return;
} else {
waiting_for_peered.push_back(op);
+ op->mark_delayed("waiting for peered");
return;
}
}
if (!is_active()) {
dout(20) << " peered, not active, waiting for active on " << op << dendl;
waiting_for_active.push_back(op);
+ op->mark_delayed("waiting for active");
return;
}
if (is_replay()) {