]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: fix partial recovery become whole object recovery after restart osd 44165/head
authorJianwei Zhang <jianwei1216@qq.com>
Mon, 13 Sep 2021 10:13:18 +0000 (18:13 +0800)
committerCory Snyder <csnyder@iland.com>
Wed, 1 Dec 2021 19:37:57 +0000 (14:37 -0500)
support SERVER_OCTOPUS feature for pg_missing_item::encode()

Fixes: https://tracker.ceph.com/issues/52583
Signed-off-by: Jianwei Zhang <jianwei1216@qq.com>
(cherry picked from commit dcdb188b6f577551fb377ba34145419f81322b03)

src/osd/PGLog.cc

index 9e81f9f5f3b13d8abf867dcf9b296d2fe5aaa3ad..7ed51488083652e6f0c3639daf7d10905a820eb0 100644 (file)
@@ -942,8 +942,7 @@ void PGLog::_write_log_and_missing(
       if (!missing.is_missing(obj, &item)) {
        to_remove.insert(key);
       } else {
-       uint64_t features = missing.may_include_deletes ? CEPH_FEATURE_OSD_RECOVERY_DELETES : 0;
-       encode(make_pair(obj, item), (*km)[key], features);
+       encode(make_pair(obj, item), (*km)[key], CEPH_FEATUREMASK_SERVER_OCTOPUS);
       }
     });
   if (require_rollback) {