From: Samuel Just Date: Thu, 21 Feb 2013 23:31:36 +0000 (-0800) Subject: PG::proc_replica_log: adjust oinfo.last_complete based on omissing X-Git-Tag: v0.59~151 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ce7ffc34408bf32c66dc07e6f42d54b7ec489d41;p=ceph.git PG::proc_replica_log: adjust oinfo.last_complete based on omissing Otherwise, search_for_missing may neglect to check the missing set for some objects assuming that if the need version is prior to last_complete, the replica must have it. Fixes: #4994 Signed-off-by: Samuel Just --- diff --git a/src/osd/PG.cc b/src/osd/PG.cc index 09d27a6a037c..5fac26d5f766 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -277,6 +277,8 @@ void PG::proc_replica_log(ObjectStore::Transaction& t, oinfo.last_update = lu; if (lu < oinfo.last_complete) oinfo.last_complete = lu; + if (omissing.have_missing()) + oinfo.last_complete = missing.missing[missing.rmissing.begin()->second].need; } peer_info[from] = oinfo;