]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd/scrub: reserve replicas one by one, and in consistent order
authorRonen Friedman <rfriedma@redhat.com>
Sun, 24 Sep 2023 12:34:14 +0000 (07:34 -0500)
committerRonen Friedman <rfriedma@redhat.com>
Sat, 14 Oct 2023 18:49:01 +0000 (21:49 +0300)
commitcbb6c33b41d51a7d46de5efaf4ee4141a62d0652
tree41527b2be135278c7d99f8cd55dd98c7f845a125
parent817fd00240cf8ead3f4333154824b2c262dd868b
osd/scrub: reserve replicas one by one, and in consistent order

Issuing the reservation requests one by one - waiting for
approval from the secondary before the next request is sent.

The requests are sent in ascending target pg-shard-id order, reducing the
chance of having two PGs repeatedly competing for the same set of
OSDs - and doing so in an interleaved sequence.

Modifying the Session state in the scrubber FSM to react to interval
changes by discarding replica reservations.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
src/osd/PG.cc
src/osd/scrubber/pg_scrubber.cc
src/osd/scrubber/pg_scrubber.h
src/osd/scrubber/scrub_machine.cc
src/osd/scrubber/scrub_machine.h
src/osd/scrubber/scrub_machine_lstnr.h
src/osd/scrubber_common.h