]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: add optional_yield to RGWRados::get_bucket_instance_from_oid()
authorAli Maredia <amaredia@redhat.com>
Tue, 30 Apr 2019 21:52:04 +0000 (17:52 -0400)
committerAli Maredia <amaredia@redhat.com>
Fri, 17 May 2019 20:11:29 +0000 (16:11 -0400)
Signed-off-by: Ali Maredia <amaredia@redhat.com>
src/rgw/rgw_cr_rados.cc
src/rgw/rgw_rados.cc
src/rgw/rgw_rados.h

index 3f4db80f4d19826527ca37cd828e981669d6cd6e..a068ecbbf0ff57b0fc2f4e4ba9349e346341f5df 100644 (file)
@@ -529,7 +529,7 @@ bool RGWOmapAppend::finish() {
 int RGWAsyncGetBucketInstanceInfo::_send_request()
 {
   RGWSysObjectCtx obj_ctx = store->svc.sysobj->init_obj_ctx();
-  int r = store->get_bucket_instance_from_oid(obj_ctx, oid, bucket_info, NULL, NULL);
+  int r = store->get_bucket_instance_from_oid(obj_ctx, oid, bucket_info, NULL, NULL, null_yield);
   if (r < 0) {
     ldout(store->ctx(), 0) << "ERROR: failed to get bucket instance info for "
         << oid << dendl;
index 399db5bdadd7d6cff04352e33a5b94b8c5439257..59a86279045014aae29861a8eb93217192583b38 100644 (file)
@@ -8122,7 +8122,7 @@ int RGWRados::get_bucket_instance_info(RGWSysObjectCtx& obj_ctx, const string& m
   string oid = RGW_BUCKET_INSTANCE_MD_PREFIX + meta_key;
   rgw_bucket_instance_key_to_oid(oid);
 
-  return get_bucket_instance_from_oid(obj_ctx, oid, info, pmtime, pattrs);
+  return get_bucket_instance_from_oid(obj_ctx, oid, info, pmtime, pattrs, y);
 }
 
 int RGWRados::get_bucket_instance_info(RGWSysObjectCtx& obj_ctx, const rgw_bucket& bucket, RGWBucketInfo& info,
@@ -8135,11 +8135,12 @@ int RGWRados::get_bucket_instance_info(RGWSysObjectCtx& obj_ctx, const rgw_bucke
     oid = bucket.oid;
   }
 
-  return get_bucket_instance_from_oid(obj_ctx, oid, info, pmtime, pattrs);
+  return get_bucket_instance_from_oid(obj_ctx, oid, info, pmtime, pattrs, y);
 }
 
 int RGWRados::get_bucket_instance_from_oid(RGWSysObjectCtx& obj_ctx, const string& oid, RGWBucketInfo& info,
                                            real_time *pmtime, map<string, bufferlist> *pattrs,
+                                           optional_yield y,
                                            rgw_cache_entry_info *cache_info,
                                           boost::optional<obj_version> refresh_version)
 {
@@ -8307,7 +8308,7 @@ int RGWRados::_get_bucket_info(RGWSysObjectCtx& obj_ctx,
 
   rgw_cache_entry_info cache_info;
 
-  ret = get_bucket_instance_from_oid(obj_ctx, oid, e.info, &e.mtime, &e.attrs,
+  ret = get_bucket_instance_from_oid(obj_ctx, oid, e.info, &e.mtime, &e.attrs, y,
                                     &cache_info, refresh_version);
   e.info.ep_objv = ot.read_version;
   info = e.info;
index 72d821cc3e1c69cdf9ce5bde11b51fd5c296b13e..4ef1791a6cb13a323c059adbc2026f800fa53e46 100644 (file)
@@ -2138,7 +2138,7 @@ public:
                                 boost::optional<obj_version> refresh_version = boost::none);
   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 get_bucket_instance_from_oid(RGWSysObjectCtx& obj_ctx, const string& oid, RGWBucketInfo& info, ceph::real_time *pmtime, map<string, bufferlist> *pattrs,
+  int get_bucket_instance_from_oid(RGWSysObjectCtx& obj_ctx, const string& oid, RGWBucketInfo& info, ceph::real_time *pmtime, map<string, bufferlist> *pattrs, optional_yield y,
                                    rgw_cache_entry_info *cache_info = NULL,
                                   boost::optional<obj_version> refresh_version = boost::none);