auto& pool = store->svc.zone->get_zone_params().log_pool;
const auto& oid = RGWMetadataLogHistory::oid;
bufferlist bl;
- int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, objv_tracker, nullptr);
+ int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, objv_tracker, nullptr, null_yield);
if (ret < 0) {
return ret;
}
auto obj_ctx = store->svc.sysobj->init_obj_ctx();
int ret = rgw_get_system_obj(store, obj_ctx, pool, oid,
bl, objv_tracker, &orig_mtime,
- nullptr, nullptr);
+ null_yield, nullptr, nullptr);
if (ret < 0 && ret != -ENOENT) {
return ret;
}
obj.pool, obj.oid,
bl,
objv_tracker,
- nullptr, nullptr, nullptr);
+ nullptr, null_yield, nullptr, nullptr);
if (ret < 0) {
return ret;
}
bufferlist epbl;
int ret = rgw_get_system_obj(this, obj_ctx, domain_root,
- oid, epbl, &info.objv_tracker, pmtime, pattrs,
+ oid, epbl, &info.objv_tracker, pmtime, y, pattrs,
cache_info, refresh_version);
if (ret < 0) {
return ret;
rgw_make_bucket_entry_name(tenant_name, bucket_name, bucket_entry);
int ret = rgw_get_system_obj(this, obj_ctx, svc.zone->get_zone_params().domain_root,
- bucket_entry, bl, objv_tracker, pmtime, pattrs,
+ bucket_entry, bl, objv_tracker, pmtime, null_yield, pattrs,
cache_info, refresh_version);
if (ret < 0) {
return ret;
bufferlist bl;
auto obj_ctx = store->svc.sysobj->init_obj_ctx();
- int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, NULL, NULL);
+ int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, NULL, NULL, null_yield);
if (ret < 0) {
return ret;
}
bufferlist bl;
auto obj_ctx = store->svc.sysobj->init_obj_ctx();
- int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, NULL, NULL);
+ int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, NULL, NULL, null_yield);
if (ret < 0) {
ldout(cct, 0) << "ERROR: failed reading role info from pool: " << pool.name <<
": " << id << ": " << cpp_strerror(-ret) << dendl;
bufferlist bl;
auto obj_ctx = store->svc.sysobj->init_obj_ctx();
- int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, NULL, NULL);
+ int ret = rgw_get_system_obj(store, obj_ctx, pool, oid, bl, NULL, NULL, null_yield);
if (ret < 0) {
ldout(cct, 0) << "ERROR: failed reading role name from pool: " << pool.name << ": "
<< name << ": " << cpp_strerror(-ret) << dendl;
}
int rgw_get_system_obj(RGWRados *rgwstore, RGWSysObjectCtx& obj_ctx, const rgw_pool& pool, const string& key, bufferlist& bl,
- RGWObjVersionTracker *objv_tracker, real_time *pmtime, map<string, bufferlist> *pattrs,
+ RGWObjVersionTracker *objv_tracker, real_time *pmtime, optional_yield y, map<string, bufferlist> *pattrs,
rgw_cache_entry_info *cache_info, boost::optional<obj_version> refresh_version)
{
bufferlist::iterator iter;
int ret = rop.set_attrs(pattrs)
.set_last_mod(pmtime)
.set_objv_tracker(objv_tracker)
- .stat(null_yield);
+ .stat(y);
if (ret < 0)
return ret;
ret = rop.set_cache_info(cache_info)
.set_refresh_version(refresh_version)
- .read(&bl, null_yield);
+ .read(&bl, y);
if (ret == -ECANCELED) {
/* raced, restart */
if (!original_readv.empty()) {
int rgw_put_system_obj(RGWRados *rgwstore, const rgw_pool& pool, const string& oid, bufferlist& data, bool exclusive,
RGWObjVersionTracker *objv_tracker, real_time set_mtime, map<string, bufferlist> *pattrs = NULL);
int rgw_get_system_obj(RGWRados *rgwstore, RGWSysObjectCtx& obj_ctx, const rgw_pool& pool, const string& key, bufferlist& bl,
- RGWObjVersionTracker *objv_tracker, real_time *pmtime, map<string, bufferlist> *pattrs = NULL,
+ RGWObjVersionTracker *objv_tracker, real_time *pmtime, optional_yield y, map<string, bufferlist> *pattrs = NULL,
rgw_cache_entry_info *cache_info = NULL,
boost::optional<obj_version> refresh_version = boost::none);
int rgw_delete_system_obj(RGWRados *rgwstore, const rgw_pool& pool, const string& oid,
RGWUID uid;
auto obj_ctx = store->svc.sysobj->init_obj_ctx();
- int ret = rgw_get_system_obj(store, obj_ctx, pool, key, bl, NULL, &e.mtime);
+ int ret = rgw_get_system_obj(store, obj_ctx, pool, key, bl, NULL, &e.mtime, null_yield);
if (ret < 0)
return ret;
auto obj_ctx = store->svc.sysobj->init_obj_ctx();
string oid = uid.to_str();
- int ret = rgw_get_system_obj(store, obj_ctx, store->svc.zone->get_zone_params().user_uid_pool, oid, bl, objv_tracker, pmtime, pattrs, cache_info);
+ int ret = rgw_get_system_obj(store, obj_ctx, store->svc.zone->get_zone_params().user_uid_pool, oid, bl, objv_tracker, pmtime, null_yield, pattrs, cache_info);
if (ret < 0) {
return ret;
}