]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd/PeeringState: rename "cancel_backfill" to "suspend_backfill" 61232/head
authorXuehan Xu <xuxuehan@qianxin.com>
Mon, 16 Dec 2024 03:05:11 +0000 (11:05 +0800)
committerXuehan Xu <xuxuehan@qianxin.com>
Tue, 7 Jan 2025 03:06:29 +0000 (11:06 +0800)
commit29c43371b595f30d8840185eba21c09ee235f0f8
tree8b10c9553c2ee49400ce89cf173608c4942decd0
parent1e22c110183c6512b771e421723b4cab172074ed
osd/PeeringState: rename "cancel_backfill" to "suspend_backfill"

PerringState events the are leading to `cancel_backfill()` are:
* DeferBackfill - Called if local recovery reservation is revoked
  before it completes (See AsyncResever::request_reservation on_preempt)
* UnfoundBackfill
* RemoteReservationRevokedTooFull
* RemoteReservationRevoked

In each event, we merely suspend the the backfill.
The primary will *continue* to keep trying to start this backfill
as long as the up set for the current interval includes the osds
that needs to be backfilled.

Eventually, the backfill will either succeed and complete or will
be made irrelevant due to an interval change (and essentially truly
"cancelled")

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
src/crimson/osd/backfill_state.cc
src/crimson/osd/backfill_state.h
src/crimson/osd/pg.h
src/crimson/osd/pg_recovery.cc
src/crimson/osd/pg_recovery.h
src/osd/PG.cc
src/osd/PG.h
src/osd/PeeringState.cc
src/osd/PeeringState.h
src/osd/PrimaryLogPG.cc
src/test/crimson/test_backfill.cc