]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
PGLog::read_log: don't add items past backfill line to missing
authorSamuel Just <sam.just@inktank.com>
Fri, 25 Oct 2013 17:47:28 +0000 (10:47 -0700)
committerSamuel Just <sam.just@inktank.com>
Fri, 25 Oct 2013 19:34:13 +0000 (12:34 -0700)
Fixes: #6574
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
src/osd/PGLog.cc

index 1949c96fd57d1350edf4690d2c0983b6ceb222d4..130a8e0778f71281d0da6685d7e69c1017a219d4 100644 (file)
@@ -694,6 +694,7 @@ bool PGLog::read_log(ObjectStore *store, coll_t coll, hobject_t log_oid,
         i != log.log.rend();
         ++i) {
       if (i->version <= info.last_complete) break;
+      if (i->soid > info.last_backfill) continue;
       if (did.count(i->soid)) continue;
       did.insert(i->soid);
       
@@ -717,6 +718,7 @@ bool PGLog::read_log(ObjectStore *store, coll_t coll, hobject_t log_oid,
         i != divergent_priors.rend();
         ++i) {
       if (i->first <= info.last_complete) break;
+      if (i->second > info.last_backfill) continue;
       if (did.count(i->second)) continue;
       did.insert(i->second);
       bufferlist bv;