]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: Only request scrub reservations from PG's acting set 28868/head 28869/head
authorDavid Zafman <dzafman@redhat.com>
Tue, 25 Jun 2019 14:57:43 +0000 (07:57 -0700)
committerDavid Zafman <dzafman@redhat.com>
Fri, 28 Jun 2019 18:51:36 +0000 (11:51 -0700)
Fixes: http://tracker.ceph.com/issues/40530
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 0855ef827b2e79b70b82c9feec656a4fd16f3d85)

Conflicts:
src/osd/PG.cc (Use actingset instead of get_actingset(), code
rearranged)

src/osd/PG.cc

index 4c81620aa33d1259d75a613ba5426a856a8d0698..94456eee7eab342b4b4d5f7d872b9038864ca164 100644 (file)
@@ -4470,7 +4470,7 @@ bool PG::sched_scrub()
       clear_scrub_reserved();
       scrub_unreserve_replicas();
       return false;
-    } else if (scrubber.reserved_peers.size() == acting.size()) {
+    } else if (scrubber.reserved_peers.size() == actingset.size()) {
       dout(20) << __func__ << ": success, reserved self and replicas" << dendl;
       if (scrubber.time_for_deep) {
        dout(10) << __func__ << ": scrub will be deep" << dendl;
@@ -4743,8 +4743,8 @@ void PG::clear_scrub_reserved()
 void PG::scrub_reserve_replicas()
 {
   ceph_assert(backfill_targets.empty());
-  for (set<pg_shard_t>::iterator i = acting_recovery_backfill.begin();
-       i != acting_recovery_backfill.end();
+  for (set<pg_shard_t>::iterator i = actingset.begin();
+       i != actingset.end();
        ++i) {
     if (*i == pg_whoami) continue;
     dout(10) << "scrub requesting reserve from osd." << *i << dendl;
@@ -4760,8 +4760,8 @@ void PG::scrub_reserve_replicas()
 void PG::scrub_unreserve_replicas()
 {
   ceph_assert(backfill_targets.empty());
-  for (set<pg_shard_t>::iterator i = acting_recovery_backfill.begin();
-       i != acting_recovery_backfill.end();
+  for (set<pg_shard_t>::iterator i = actingset.begin();
+       i != actingset.end();
        ++i) {
     if (*i == pg_whoami) continue;
     dout(10) << "scrub requesting unreserve from osd." << *i << dendl;