]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
rgw: move helper code out of rgw_rados.cc
authorYehuda Sadeh <yehuda@redhat.com>
Fri, 1 Mar 2019 23:50:20 +0000 (15:50 -0800)
committerCasey Bodley <cbodley@redhat.com>
Mon, 29 Jul 2019 19:20:46 +0000 (15:20 -0400)
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
src/rgw/rgw_bucket.cc
src/rgw/rgw_rados.cc
src/rgw/rgw_rados.h

index dbb80e6b6b4525c8a17934efcc779351da2c488c..40092cab172f23543f1add5ef94e9524cb783de5 100644 (file)
@@ -413,6 +413,46 @@ int rgw_bucket_parse_bucket_key(CephContext *cct, const string& key,
   return 0;
 }
 
+static int convert_old_bucket_info(RGWRados *store,
+                                   RGWSysObjectCtx& obj_ctx,
+                                   const string& tenant_name,
+                                   const string& bucket_name)
+{
+  RGWBucketEntryPoint entry_point;
+  real_time ep_mtime;
+  RGWObjVersionTracker ot;
+  map<string, bufferlist> attrs;
+  RGWBucketInfo info;
+  auto cct = store->ctx();
+
+  ldout(cct, 10) << "RGWRados::convert_old_bucket_info(): bucket=" << bucket_name << dendl;
+
+  int ret = store->get_bucket_entrypoint_info(obj_ctx, tenant_name, bucket_name, entry_point, &ot, &ep_mtime, &attrs);
+  if (ret < 0) {
+    ldout(cct, 0) << "ERROR: get_bucket_entrypoint_info() returned " << ret << " bucket=" << bucket_name << dendl;
+    return ret;
+  }
+
+  if (!entry_point.has_bucket_info) {
+    /* already converted! */
+    return 0;
+  }
+
+  info = entry_point.old_bucket_info;
+  info.bucket.oid = bucket_name;
+  info.ep_objv = ot.read_version;
+
+  ot.generate_new_write_ver(cct);
+
+  ret = store->put_linked_bucket_info(info, false, ep_mtime, &ot.write_version, &attrs, true);
+  if (ret < 0) {
+    ldout(cct, 0) << "ERROR: failed to put_linked_bucket_info(): " << ret << dendl;
+    return ret;
+  }
+
+  return 0;
+}
+
 int rgw_bucket_set_attrs(RGWRados *store, RGWBucketInfo& bucket_info,
                          map<string, bufferlist>& attrs,
                          RGWObjVersionTracker *objv_tracker)
@@ -422,7 +462,7 @@ int rgw_bucket_set_attrs(RGWRados *store, RGWBucketInfo& bucket_info,
   if (!bucket_info.has_instance_obj) {
     /* an old bucket object, need to convert it */
     RGWSysObjectCtx obj_ctx = store->svc.sysobj->init_obj_ctx();
-    int ret = store->convert_old_bucket_info(obj_ctx, bucket.tenant, bucket.name);
+    int ret = convert_old_bucket_info(store, obj_ctx, bucket.tenant, bucket.name);
     if (ret < 0) {
       ldout(store->ctx(), 0) << "ERROR: failed converting old bucket info: " << ret << dendl;
       return ret;
index 3e95a17a598f6b765d83ea761a5eddef247ddc4a..31299c8f33855ec167455c9708d0a089ae52523e 100644 (file)
@@ -7838,44 +7838,6 @@ int RGWRados::get_bucket_entrypoint_info(RGWSysObjectCtx& obj_ctx,
   return 0;
 }
 
-int RGWRados::convert_old_bucket_info(RGWSysObjectCtx& obj_ctx,
-                                      const string& tenant_name,
-                                      const string& bucket_name)
-{
-  RGWBucketEntryPoint entry_point;
-  real_time ep_mtime;
-  RGWObjVersionTracker ot;
-  map<string, bufferlist> attrs;
-  RGWBucketInfo info;
-
-  ldout(cct, 10) << "RGWRados::convert_old_bucket_info(): bucket=" << bucket_name << dendl;
-
-  int ret = get_bucket_entrypoint_info(obj_ctx, tenant_name, bucket_name, entry_point, &ot, &ep_mtime, &attrs);
-  if (ret < 0) {
-    ldout(cct, 0) << "ERROR: get_bucket_entrypoint_info() returned " << ret << " bucket=" << bucket_name << dendl;
-    return ret;
-  }
-
-  if (!entry_point.has_bucket_info) {
-    /* already converted! */
-    return 0;
-  }
-
-  info = entry_point.old_bucket_info;
-  info.bucket.oid = bucket_name;
-  info.ep_objv = ot.read_version;
-
-  ot.generate_new_write_ver(cct);
-
-  ret = put_linked_bucket_info(info, false, ep_mtime, &ot.write_version, &attrs, true);
-  if (ret < 0) {
-    ldout(cct, 0) << "ERROR: failed to put_linked_bucket_info(): " << ret << dendl;
-    return ret;
-  }
-
-  return 0;
-}
-
 int RGWRados::get_bucket_info(RGWSysObjectCtx& obj_ctx,
                               const string& tenant, const string& bucket_name,
                               RGWBucketInfo& info,
index 6fdc0aca708d9aedf1f71f60d06176785394766f..e6cb4245837d7fa36dd63c38b7b7fe0bf292aebb 100644 (file)
@@ -1381,7 +1381,6 @@ public:
   int get_bucket_instance_info(RGWSysObjectCtx& obj_ctx, const string& meta_key, RGWBucketInfo& info, ceph::real_time *pmtime, map<string, bufferlist> *pattrs, optional_yield y);
   int get_bucket_instance_info(RGWSysObjectCtx& obj_ctx, const rgw_bucket& bucket, RGWBucketInfo& info, ceph::real_time *pmtime, map<string, bufferlist> *pattrs, optional_yield y);
 
-  int convert_old_bucket_info(RGWSysObjectCtx& obj_ctx, const string& tenant_name, const string& bucket_name);
   static void make_bucket_entry_name(const string& tenant_name, const string& bucket_name, string& bucket_entry);
 
   int get_bucket_info(RGWSysObjectCtx& obj_ctx,