]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd/PG: do not queue scrub if PG is not active when unblock 29372/head
authorSage Weil <sage@redhat.com>
Wed, 19 Jun 2019 19:20:32 +0000 (14:20 -0500)
committerPrashant D <pdhange@redhat.com>
Sun, 28 Jul 2019 23:47:17 +0000 (19:47 -0400)
commit7f2aa85af50c8604728b0467c4b7d2c258ca6e75
treec5f75bea5db016e3caa71120bb52ba5e2f6e2744
parent85fa207048f84d9c6125070861de8ae3d02b3c7b
osd/PG: do not queue scrub if PG is not active when unblock

- we are scrubbing
- we block scrub on an object
- we have an interval reset on epoch X
- we unblock and queue scrub in epoch X
- we finish the reset (we are no longer scrubbing)
- we process the PGScrub on epoch X, it is still epoch X, and we are not
  scrubbing
  -> assert

Fix by not queueing scrub if we are unblocking and the PG is no longer
active (because we are mid-way through the peering reset).

Fixes: http://tracker.ceph.com/issues/40451
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 7a3227e946332c0bdc983201fe4a4e83cfe6fda6)
src/osd/PrimaryLogPG.cc