This can be fast-forwarded by a sync_force or other mon thrashing events.
In any case, if we see it in the future, it is easy to rewind.
Signed-off-by: Sage Weil <sage@newdream.net>
}
}
// we may have logged ahead of summary.version, but never ahead of paxos
- assert(external_log_to <= get_last_committed());
+ if (external_log_to > get_last_committed()) {
+ derr << __func__ << " rewinding external_log_to from " << external_log_to
+ << " -> " << get_last_committed() << " (sync_force? mon rebuild?)" << dendl;
+ external_log_to = get_last_committed();
+ }
if (external_log_to >= summary.version) {
return;
}