From 061589f7c5b2112c1a5a9f6469f2a110f7771e3b Mon Sep 17 00:00:00 2001 From: myoungwon oh Date: Tue, 18 May 2021 14:38:05 +0900 Subject: [PATCH] osd: fix wrong input when calling recover_object() Iterating the obc' clones, recover_object() should check correspoding adjacent clones. fixes: https://tracker.ceph.com/issues/50806 Signed-off-by: Myoungwon Oh (cherry-picked from c3163dd2e81eb7575385991387926631d989aca2) --- src/osd/PrimaryLogPG.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/osd/PrimaryLogPG.cc b/src/osd/PrimaryLogPG.cc index 8df181a9bd52e..1342f9d439a26 100644 --- a/src/osd/PrimaryLogPG.cc +++ b/src/osd/PrimaryLogPG.cc @@ -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); -- 2.39.5