]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
ReplicatedPG::recover_backfill: update last_backfill to max() when backfill is complete
authorSamuel Just <sam.just@inktank.com>
Tue, 29 Oct 2013 06:05:30 +0000 (23:05 -0700)
committerSamuel Just <sam.just@inktank.com>
Wed, 8 Oct 2014 22:55:21 +0000 (15:55 -0700)
Signed-off-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit 7a06a71e0f2023f66d003dfb0168f4fe51eaa058)

src/osd/ReplicatedPG.cc

index c97724040d4d7e32eee72302722077a4af3ef898..614ef4eb8be933f4913d2b04dab180b5b5646813 100644 (file)
@@ -7491,6 +7491,12 @@ int ReplicatedPG::recover_backfill(
   }
   assert(!pending_backfill_updates.empty() ||
         new_last_backfill == last_backfill_started);
+  if (pending_backfill_updates.empty() &&
+      backfill_pos.is_max()) {
+    assert(backfills_in_flight.empty());
+    new_last_backfill = backfill_pos;
+    last_backfill_started = backfill_pos;
+  }
   if (new_last_backfill > pinfo.last_backfill) {
     pinfo.last_backfill = new_last_backfill;
     epoch_t e = get_osdmap()->get_epoch();