Skip to content

Commit 4039919

Browse files
authored
Merge pull request ceph#65234 from xxhdx1985126/wip-72706
crimson/osd/recovery_backend: interrupt all recovery_waiter unconditionally when cleaning up the recovery backend Reviewed-by: Samuel Just <[email protected]>
2 parents 8c781c8 + 2713c34 commit 4039919

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

src/crimson/osd/recovery_backend.cc

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,12 @@ void RecoveryBackend::clean_up(ceph::os::Transaction& t,
5555
replica_push_targets.clear();
5656

5757
for (auto& [soid, recovery_waiter] : recovering) {
58-
if ((recovery_waiter->pull_info
59-
&& recovery_waiter->pull_info->is_complete())
60-
|| (!recovery_waiter->pull_info
61-
&& recovery_waiter->obc && recovery_waiter->obc->obs.exists)) {
58+
if (recovery_waiter->obc) {
6259
recovery_waiter->obc->interrupt(
6360
::crimson::common::actingset_changed(
6461
pg.is_primary()));
65-
recovery_waiter->interrupt(why);
6662
}
63+
recovery_waiter->interrupt(why);
6764
}
6865
recovering.clear();
6966
}

0 commit comments

Comments
 (0)