]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: fix wrong input when calling recover_object() 46120/head
authormyoungwon oh <ohmyoungwon@gmail.com>
Tue, 18 May 2021 05:38:05 +0000 (14:38 +0900)
committermyoungwon oh <ohmyoungwon@gmail.com>
Tue, 3 May 2022 02:14:31 +0000 (11:14 +0900)
Iterating the obc' clones, recover_object() should check correspoding
adjacent clones.

fixes: https://tracker.ceph.com/issues/50806

Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
(cherry-picked from c3163dd2e81eb7575385991387926631d989aca2)

src/osd/PrimaryLogPG.cc

index 8df181a9bd52e72bd76defcc6c81c7c0887ef3ef..1342f9d439a265d49715fe0a6b9943b1edf8bc22 100644 (file)
@@ -3371,7 +3371,7 @@ int PrimaryLogPG::get_manifest_ref_count(ObjectContextRef obc, std::string& fp_o
     if (!clone_obc) {
       break;
     }
-    if (recover_adjacent_clones(obc, op)) {
+    if (recover_adjacent_clones(clone_obc, op)) {
       return -EAGAIN;
     }
     get_adjacent_clones(clone_obc, obc_l, obc_g);