If we marked _all_ missing as lost, reset last_complete, since missing is
now empty!
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
log.print(*_dout);
*_dout << dendl;
+ if (missing.num_missing() == 0) {
+ // advance last_complete since nothing else is missing!
+ info.last_complete = info.last_update;
+ write_info(t);
+ }
+
// Send out the PG log to all replicas
// So that they know what is lost
share_pg_log(old_last_update);
if (pg->missing.num_missing() > pg->missing_loc.size()) {
if (pg->all_unfound_are_lost(pg->osd->osdmap)) {
- pg->mark_all_unfound_as_lost(
- *context< RecoveryMachine >().get_cur_transaction());
+ pg->mark_all_unfound_as_lost(*context< RecoveryMachine >().get_cur_transaction());
}
}