From 09c03482ad75550d03e6eebde3475534ee0383f9 Mon Sep 17 00:00:00 2001 From: myoungwon oh Date: Thu, 23 Nov 2017 01:40:27 +0900 Subject: [PATCH] osd: fix untracked ObjectContextRef referecnce leak occur if sub_cop has ObjectContextRef Signed-off-by: Myoungwon Oh --- src/osd/PrimaryLogPG.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/osd/PrimaryLogPG.cc b/src/osd/PrimaryLogPG.cc index eb4e23bbc00..53efbc62f3c 100644 --- a/src/osd/PrimaryLogPG.cc +++ b/src/osd/PrimaryLogPG.cc @@ -8378,7 +8378,8 @@ void PrimaryLogPG::_copy_some_manifest(ObjectContextRef obc, CopyOpRef cop, uint uint64_t length = manifest->chunk_map[iter->first].length; hobject_t soid = manifest->chunk_map[iter->first].oid; object_locator_t oloc(soid); - CopyOpRef sub_cop(std::make_shared(cop->cb, cop->obc, cop->src, oloc, + CopyCallback * cb = NULL; + CopyOpRef sub_cop(std::make_shared(cb, ObjectContextRef(), cop->src, oloc, cop->results.user_version, cop->flags, cop->mirror_snapset, cop->src_obj_fadvise_flags, cop->dest_obj_fadvise_flags)); sub_cop->cursor.data_offset = obj_offset; -- 2.39.5