assert(recovering_oids.count(soid) == 0);
recovering_oids.insert(soid);
#endif
- if (soid.is_max()) {
- waiting_on_backfill = true;
- }
osd->start_recovery_op(this, soid);
}
assert(recovering_oids.count(soid));
recovering_oids.erase(soid);
#endif
- if (soid.is_max()) {
- waiting_on_backfill = false;
- }
osd->finish_recovery_op(this, soid, dequeue);
}
bufferlist::iterator p = m->get_data().begin();
::decode(bi.objects, p);
+ assert(waiting_on_backfill);
+ waiting_on_backfill = false;
finish_recovery_op(bi.begin);
}
break;
MOSDPGScan *m = new MOSDPGScan(MOSDPGScan::OP_SCAN_GET_DIGEST, e, e, info.pgid,
pbi.end, hobject_t());
osd->cluster_messenger->send_message(m, get_osdmap()->get_cluster_inst(backfill_target));
+ waiting_on_backfill = true;
start_recovery_op(pbi.end);
ops++;
break;
//assert(info.stats.stats.sum.num_bytes == pinfo.stats.stats.sum.num_bytes);
osd->cluster_messenger->send_message(m, get_osdmap()->get_cluster_inst(backfill_target));
+ waiting_on_backfill = true;
start_recovery_op(hobject_t::get_max());
ops++;
}