]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: fix partial recovery become whole object recovery after restart osd 43513/head
authorJianwei Zhang <jianwei1216@qq.com>
Mon, 13 Sep 2021 10:13:18 +0000 (18:13 +0800)
committerNeha Ojha <nojha@redhat.com>
Tue, 12 Oct 2021 21:11:50 +0000 (21:11 +0000)
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 be3f7414d69242ebc21ab01c6adb1cfe2f1803d6..2c322b3d8f38c2938bb76070907688c52e055f6a 100644 (file)
@@ -938,8 +938,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) {