const uint64_t owner = op->get_req()->get_source().num();
const int type = op->get_req()->get_type();
- dout(15) << "enqueue_op " << op << " prio " << priority
+ dout(15) << "enqueue_op " << *op->get_req() << " prio " << priority
<< " type " << type
<< " cost " << cost
<< " latency " << latency
op->set_dequeued_time(now);
utime_t latency = now - m->get_recv_stamp();
- dout(10) << "dequeue_op " << op << " prio " << m->get_priority()
+ dout(10) << "dequeue_op " << *op->get_req()
+ << " prio " << m->get_priority()
<< " cost " << m->get_cost()
<< " latency " << latency
<< " " << *m
pg->do_request(op, handle);
// finish
- dout(10) << "dequeue_op " << op << " finish" << dendl;
+ dout(10) << "dequeue_op " << *op->get_req() << " finish" << dendl;
OID_EVENT_TRACE_WITH_MSG(m, "DEQUEUE_OP_END", false);
}
{
auto p = waiting_for_map.find(op->get_source());
if (p != waiting_for_map.end()) {
- dout(20) << __func__ << " " << op << " (waiting_for_map " << p->first << ")"
+ dout(20) << __func__ << " " << *op->get_req()
+ << " (waiting_for_map " << p->first << ")"
<< dendl;
p->second.push_front(op);
} else {
- dout(20) << __func__ << " " << op << dendl;
+ dout(20) << __func__ << " " << *op->get_req() << dendl;
osd->enqueue_front(
OpSchedulerItem(
unique_ptr<OpSchedulerItem::OpQueueable>(new PGOpItem(info.pgid, op)),
{
auto m = op->get_req<MOSDPGRecoveryDelete>();
ceph_assert(m->get_type() == MSG_OSD_PG_RECOVERY_DELETE);
- dout(20) << __func__ << " " << op << dendl;
+ dout(20) << __func__ << " " << *op->get_req() << dendl;
op->mark_started();
{
auto m = op->get_req<MOSDPGRecoveryDeleteReply>();
ceph_assert(m->get_type() == MSG_OSD_PG_RECOVERY_DELETE_REPLY);
- dout(20) << __func__ << " " << op << dendl;
+ dout(20) << __func__ << " " << *op->get_req() << dendl;
for (const auto &p : m->objects) {
ObjectRecoveryInfo recovery_info;
void PrimaryLogPG::wait_for_blocked_object(const hobject_t& soid, OpRequestRef op)
{
- dout(10) << __func__ << " " << soid << " " << op << dendl;
+ dout(10) << __func__ << " " << soid << " " << *op->get_req() << dendl;
waiting_for_blocked_object[soid].push_back(op);
op->mark_delayed("waiting for blocked object");
}
}
if (recovery_state.needs_flush()) {
- dout(20) << "waiting for flush on " << op << dendl;
+ dout(20) << "waiting for flush on " << *op->get_req() << dendl;
waiting_for_flush.push_back(op);
op->mark_delayed("waiting for flush");
return;
case CEPH_MSG_OSD_OP:
case CEPH_MSG_OSD_BACKOFF:
if (!is_active()) {
- dout(20) << " peered, not active, waiting for active on " << op << dendl;
+ dout(20) << " peered, not active, waiting for active on "
+ << *op->get_req() << dendl;
waiting_for_active.push_back(op);
op->mark_delayed("waiting for active");
return;
request_redirect_t redir(m->get_object_locator(), pool.info.tier_of);
reply->set_redirect(redir);
dout(10) << "sending redirect to pool " << pool.info.tier_of << " for op "
- << op << dendl;
+ << *op->get_req() << dendl;
m->get_connection()->send_message(reply);
return;
}
bool ReplicatedBackend::can_handle_while_inactive(OpRequestRef op)
{
- dout(10) << __func__ << ": " << op << dendl;
+ dout(10) << __func__ << ": " << *op->get_req() << dendl;
switch (op->get_req()->get_type()) {
case MSG_OSD_PG_PULL:
return true;
OpRequestRef op
)
{
- dout(10) << __func__ << ": " << op << dendl;
+ dout(10) << __func__ << ": " << *op->get_req() << dendl;
switch (op->get_req()->get_type()) {
case MSG_OSD_PG_PUSH:
do_push(op);