]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mds/scrub: enqueue all child frags for a given fragset 53670/head
authorMilind Changire <mchangir@redhat.com>
Tue, 26 Sep 2023 10:50:50 +0000 (16:20 +0530)
committerMilind Changire <mchangir@redhat.com>
Tue, 26 Sep 2023 10:50:50 +0000 (16:20 +0530)
commitc20b4d706dfe32e08c5301676fd9144b052a4347
tree2168f9ad11fcd75f97dc5432dd312b18f3f786f8
parentd855643ddb9240c11ab7e855ac7f2dd65f88063c
mds/scrub: enqueue all child frags for a given fragset

Problem:
fragsets sent over to replicas for scrubbing are simplified i.e. they
are bit representation of the lease common ancestors of the frags that
need scrubbing on that replica. A search operation of a frag in the
frasget often fails to match exactly with the frags delegated to the
replica causing the scrub item to infinitely be held in the scrub stack.

Solution:
Test if the frag in the fragset sent over to the replica contains the
delegated frag as a child to accept it for scrubbing.

Fixes: https://tracker.ceph.com/issues/62658
Signed-off-by: Milind Changire <mchangir@redhat.com>
src/mds/ScrubStack.cc