]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: remove get_system_obj_attrs in function RGWDeleteLC::execute and 19582/head
authorBingyin Zhang <zhangbingyin@cloudin.cn>
Sun, 24 Dec 2017 23:07:31 +0000 (07:07 +0800)
committerBingyin Zhang <zhangbingyin@cloudin.cn>
Sun, 24 Dec 2017 23:07:31 +0000 (07:07 +0800)
RGWDeleteCORS::execute

* After function init_permissions, the xattr of bucket instance object
* is already in "s->bucket_attrs", so get_system_obj_attrs is redundant
* here.

Signed-off-by: Bingyin Zhang <zhangbingyin@cloudin.cn>
src/rgw/rgw_op.cc

index 33ac274962af3f71c164580a4c9fb71a2b3e343e..8425afd363ce29f8279ce8192908d99d41f3bb6b 100644 (file)
@@ -4936,16 +4936,7 @@ void RGWPutLC::execute()
 
 void RGWDeleteLC::execute()
 {
-  bufferlist bl;
-  map<string, bufferlist> attrs;
-  map<string, bufferlist>::iterator iter;
-  rgw_raw_obj obj;
-  store->get_bucket_instance_obj(s->bucket, obj);
-  store->set_prefetch_data(s->obj_ctx, obj);
-  op_ret = get_system_obj_attrs(store, s, obj, attrs, NULL, &s->bucket_info.objv_tracker);
-  if (op_ret < 0)
-    return;
-
+  map<string, bufferlist> attrs = s->bucket_attrs;
   attrs.erase(RGW_ATTR_LC);
   op_ret = rgw_bucket_set_attrs(store, s->bucket_info, attrs,
                                &s->bucket_info.objv_tracker);
@@ -5043,21 +5034,13 @@ void RGWDeleteCORS::execute()
       if (op_ret < 0)
        return op_ret;
 
-      rgw_raw_obj obj;
       if (!cors_exist) {
        dout(2) << "No CORS configuration set yet for this bucket" << dendl;
        op_ret = -ENOENT;
        return op_ret;
       }
-      store->get_bucket_instance_obj(s->bucket, obj);
-      store->set_prefetch_data(s->obj_ctx, obj);
-      map<string, bufferlist> attrs;
-      map<string, bufferlist>::iterator iter;
-
-      op_ret = get_system_obj_attrs(store, s, obj, attrs, NULL, &s->bucket_info.objv_tracker);
-      if (op_ret < 0)
-       return op_ret;
 
+      map<string, bufferlist> attrs = s->bucket_attrs;
       attrs.erase(RGW_ATTR_CORS);
       op_ret = rgw_bucket_set_attrs(store, s->bucket_info, attrs,
                                &s->bucket_info.objv_tracker);