]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/osd/pg_recovery: call on_global_recover on replica-recover-deleted 70547/head
authorXuehan Xu <xuxuehan@qianxin.com>
Sun, 26 Jul 2026 12:00:02 +0000 (20:00 +0800)
committerXuehan Xu <xuxuehan@qianxin.com>
Sun, 26 Jul 2026 12:55:32 +0000 (20:55 +0800)
objects only when it's not missing on the primary too

The issue was introduced by 60537bdd2f42fb87c9d4a8b62e9e722231a8842b
which didn't fix the issue it was supposed to because of the same error
this commit tries to fix.

Fixes: https://tracker-origin.ceph.com/issues/78676
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
src/crimson/osd/pg_recovery.cc

index 9def57150b58060caf57cbc2776b72d4da5964e6..ea768ec8f9b5d95d4b480e613229709d9618c735 100644 (file)
@@ -348,7 +348,7 @@ RecoveryBackend::interruptible_future<> PGRecovery::prep_object_replica_deletes(
       trigger,
       pg->get_recovery_backend()->push_delete(soid, need).then_interruptible(
        [=, this] {
-        if (pg->get_peering_state().get_pg_log().get_missing().is_missing(soid)) {
+        if (!pg->get_peering_state().get_pg_log().get_missing().is_missing(soid)) {
           object_stat_sum_t stat_diff;
           stat_diff.num_objects_recovered = 1;
           on_global_recover(soid, stat_diff, true);