]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
crimson/osd/pg_recovery: only reset_pglog_based_recovery_op if complete 63215/head
authorSamuel Just <sjust@redhat.com>
Fri, 9 May 2025 16:46:48 +0000 (16:46 +0000)
committerSamuel Just <sjust@redhat.com>
Fri, 9 May 2025 17:06:32 +0000 (17:06 +0000)
commitc95509edcdf387f8e57416f557bd154049ef34df
treeabab3394d8863f7c37fc06a1d7f0813aa51f2fd4
parentd2175d2fab75ea50d5615706d7867372e19819bd
crimson/osd/pg_recovery: only reset_pglog_based_recovery_op if complete

ce4e9aaad, as part of the start_recovery_ops changed the call to
reset_pglog_based_recovery_op to occur unconditionally rather than only
if recovery has completed.

Note, this fix only restores the prior behavior.  There's actually still
a race here where a DeferRecovery could be processed between the call to
reset_pglog_based_recovery_op and the RequestBackfill or
AllReplicasRecovered being processed.

Introduced: ce4e9aaad8f2cafae24511fe1687c61dc41affc1
Related: https://tracker.ceph.com/issues/71267
Fixes: https://tracker.ceph.com/issues/70337
Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/osd/pg_recovery.cc