]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd/scrub: move ReplicaReservations into the Scrubber FSM
authorRonen Friedman <rfriedma@redhat.com>
Fri, 13 Oct 2023 17:14:31 +0000 (12:14 -0500)
committerRonen Friedman <rfriedma@redhat.com>
Sat, 14 Oct 2023 18:49:01 +0000 (21:49 +0300)
commit10401db4a67443ff6579cfce31135917dd19fec3
tree024bc7a783bc31c63687f336b1f2fa29ae64e8ae
parent3bb2e14eb8ab5426199f36b93f54c85d40ced70e
osd/scrub: move ReplicaReservations into the Scrubber FSM

Handle grant/deny messages within the FSM.
One exception at this point: the handling of "granted by everyone"
(due to the technical inconvenience of having to handle the
"0 replicas" case in the FSM state constructor).

Note: after this commit, ScrubMachineListener - an API which is
a subset of the Scrubber API to be used by the Scrubber FSM - does
no longer make sense. The FSM should now have full access to the
scrubber, and that interface will be removed in a subsequent PR.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
13 files changed:
src/osd/OSD.cc
src/osd/OSD.h
src/osd/PG.h
src/osd/scheduler/OpSchedulerItem.cc
src/osd/scheduler/OpSchedulerItem.h
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/scrub_reservations.cc
src/osd/scrubber/scrub_reservations.h
src/osd/scrubber_common.h