From 291d448478360a1be0a9826ada58c94ecd643ad0 Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Fri, 30 May 2014 16:17:47 -0700 Subject: [PATCH] rgw: fetch object attrs on multipart completion Fixes: #8452 Backport: firefly This fixes a regression following a code cleanup. Signed-off-by: Yehuda Sadeh (cherry picked from commit 70afaaabf979d4cc1a14dbc2b772224cbafcac2f) --- src/rgw/rgw_op.cc | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index 26f587d0f15a6..a781e9fab3dd6 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -2693,6 +2693,14 @@ void RGWCompleteMultipart::execute() iter = parts->parts.begin(); + meta_obj.init_ns(s->bucket, meta_oid, mp_ns); + + ret = get_obj_attrs(store, s, meta_obj, attrs, NULL, NULL); + if (ret < 0) { + ldout(s->cct, 0) << "ERROR: failed to get obj attrs, obj=" << meta_obj << " ret=" << ret << dendl; + return; + } + do { ret = list_multipart_parts(store, s, upload_id, meta_oid, max_parts, marker, obj_parts, &marker, &truncated); if (ret == -ENOENT) { @@ -2782,7 +2790,6 @@ void RGWCompleteMultipart::execute() return; // remove the upload obj - meta_obj.init_ns(s->bucket, meta_oid, mp_ns); meta_obj.set_in_extra_data(true); store->delete_obj(s->obj_ctx, s->bucket_owner.get_id(), meta_obj); } -- 2.39.5