class RGWAsyncRadosProcessor {
- deque<RGWAsyncRadosRequest *> m_req_queue;
+ std::deque<RGWAsyncRadosRequest *> m_req_queue;
std::atomic<bool> going_down = { false };
protected:
CephContext *cct;
template <class P>
class RGWSimpleWriteOnlyAsyncCR : public RGWSimpleCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
P params;
const DoutPrefixProvider *dpp;
class Request : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
P params;
const DoutPrefixProvider *dpp;
protected:
public:
Request(RGWCoroutine *caller,
RGWAioCompletionNotifier *cn,
- rgw::sal::RGWRadosStore *store,
+ rgw::sal::RadosStore* store,
const P& _params,
const DoutPrefixProvider *dpp) : RGWAsyncRadosRequest(caller, cn),
store(store),
public:
RGWSimpleWriteOnlyAsyncCR(RGWAsyncRadosProcessor *_async_rados,
- rgw::sal::RGWRadosStore *_store,
+ rgw::sal::RadosStore* _store,
const P& _params,
const DoutPrefixProvider *_dpp) : RGWSimpleCoroutine(_store->ctx()),
async_rados(_async_rados),
template <class P, class R>
class RGWSimpleAsyncCR : public RGWSimpleCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
P params;
std::shared_ptr<R> result;
const DoutPrefixProvider *dpp;
class Request : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
P params;
std::shared_ptr<R> result;
const DoutPrefixProvider *dpp;
Request(const DoutPrefixProvider *dpp,
RGWCoroutine *caller,
RGWAioCompletionNotifier *cn,
- rgw::sal::RGWRadosStore *_store,
+ rgw::sal::RadosStore* _store,
const P& _params,
std::shared_ptr<R>& _result,
const DoutPrefixProvider *_dpp) : RGWAsyncRadosRequest(caller, cn),
public:
RGWSimpleAsyncCR(RGWAsyncRadosProcessor *_async_rados,
- rgw::sal::RGWRadosStore *_store,
+ rgw::sal::RadosStore* _store,
const P& _params,
std::shared_ptr<R>& _result,
const DoutPrefixProvider *_dpp) : RGWSimpleCoroutine(_store->ctx()),
class RGWGenericAsyncCR : public RGWSimpleCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
public:
bool want_attrs, bool raw_attrs);
bufferlist bl;
- map<string, bufferlist> attrs;
+ std::map<std::string, bufferlist> attrs;
RGWObjVersionTracker objv_tracker;
};
const DoutPrefixProvider *dpp;
RGWSI_SysObj *svc;
rgw_raw_obj obj;
- map<string, bufferlist> attrs;
+ std::map<std::string, bufferlist> attrs;
protected:
int _send_request(const DoutPrefixProvider *dpp) override;
public:
RGWAsyncPutSystemObjAttrs(const DoutPrefixProvider *dpp, RGWCoroutine *caller, RGWAioCompletionNotifier *cn, RGWSI_SysObj *_svc,
RGWObjVersionTracker *_objv_tracker, const rgw_raw_obj& _obj,
- map<string, bufferlist> _attrs);
+ std::map<std::string, bufferlist> _attrs);
RGWObjVersionTracker objv_tracker;
};
class RGWAsyncLockSystemObj : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_raw_obj obj;
- string lock_name;
- string cookie;
+ std::string lock_name;
+ std::string cookie;
uint32_t duration_secs;
protected:
int _send_request(const DoutPrefixProvider *dpp) override;
public:
- RGWAsyncLockSystemObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RGWRadosStore *_store,
+ RGWAsyncLockSystemObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RadosStore* _store,
RGWObjVersionTracker *_objv_tracker, const rgw_raw_obj& _obj,
- const string& _name, const string& _cookie, uint32_t _duration_secs);
+ const std::string& _name, const std::string& _cookie, uint32_t _duration_secs);
};
class RGWAsyncUnlockSystemObj : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_raw_obj obj;
- string lock_name;
- string cookie;
+ std::string lock_name;
+ std::string cookie;
protected:
int _send_request(const DoutPrefixProvider *dpp) override;
public:
- RGWAsyncUnlockSystemObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RGWRadosStore *_store,
+ RGWAsyncUnlockSystemObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RadosStore* _store,
RGWObjVersionTracker *_objv_tracker, const rgw_raw_obj& _obj,
- const string& _name, const string& _cookie);
+ const std::string& _name, const std::string& _cookie);
};
template <class T>
RGWSI_SysObj *svc;
rgw_raw_obj obj;
- map<string, bufferlist> *pattrs;
+ std::map<std::string, bufferlist> *pattrs;
bool raw_attrs;
RGWObjVersionTracker* objv_tracker;
RGWAsyncGetSystemObj *req = nullptr;
public:
RGWSimpleRadosReadAttrsCR(const DoutPrefixProvider *_dpp, RGWAsyncRadosProcessor *_async_rados, RGWSI_SysObj *_svc,
- const rgw_raw_obj& _obj, map<string, bufferlist> *_pattrs,
+ const rgw_raw_obj& _obj, std::map<std::string, bufferlist> *_pattrs,
bool _raw_attrs, RGWObjVersionTracker* objv_tracker = nullptr)
: RGWSimpleCoroutine(_svc->ctx()),
dpp(_dpp),
RGWObjVersionTracker *objv_tracker;
rgw_raw_obj obj;
- map<string, bufferlist> attrs;
+ std::map<std::string, bufferlist> attrs;
RGWAsyncPutSystemObjAttrs *req = nullptr;
public:
RGWSimpleRadosWriteAttrsCR(const DoutPrefixProvider *_dpp,
RGWAsyncRadosProcessor *_async_rados,
RGWSI_SysObj *_svc, const rgw_raw_obj& _obj,
- map<string, bufferlist> _attrs,
+ std::map<std::string, bufferlist> _attrs,
RGWObjVersionTracker *objv_tracker = nullptr)
: RGWSimpleCoroutine(_svc->ctx()), dpp(_dpp), async_rados(_async_rados),
svc(_svc), objv_tracker(objv_tracker), obj(_obj),
};
class RGWRadosSetOmapKeysCR : public RGWSimpleCoroutine {
- rgw::sal::RGWRadosStore *store;
- map<string, bufferlist> entries;
+ rgw::sal::RadosStore* store;
+ std::map<std::string, bufferlist> entries;
rgw_rados_ref ref;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
public:
- RGWRadosSetOmapKeysCR(rgw::sal::RGWRadosStore *_store,
+ RGWRadosSetOmapKeysCR(rgw::sal::RadosStore* _store,
const rgw_raw_obj& _obj,
- map<string, bufferlist>& _entries);
+ std::map<std::string, bufferlist>& _entries);
int send_request(const DoutPrefixProvider *dpp) override;
int request_complete() override;
};
using ResultPtr = std::shared_ptr<Result>;
- RGWRadosGetOmapKeysCR(rgw::sal::RGWRadosStore *_store, const rgw_raw_obj& _obj,
- const string& _marker, int _max_entries,
+ RGWRadosGetOmapKeysCR(rgw::sal::RadosStore* _store, const rgw_raw_obj& _obj,
+ const std::string& _marker, int _max_entries,
ResultPtr result);
int send_request(const DoutPrefixProvider *dpp) override;
int request_complete() override;
private:
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_raw_obj obj;
- string marker;
+ std::string marker;
int max_entries;
ResultPtr result;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
};
using ResultPtr = std::shared_ptr<Result>;
- RGWRadosGetOmapValsCR(rgw::sal::RGWRadosStore *_store, const rgw_raw_obj& _obj,
- const string& _marker, int _max_entries,
+ RGWRadosGetOmapValsCR(rgw::sal::RadosStore* _store, const rgw_raw_obj& _obj,
+ const std::string& _marker, int _max_entries,
ResultPtr result);
int send_request(const DoutPrefixProvider *dpp) override;
int request_complete() override;
private:
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_raw_obj obj;
- string marker;
+ std::string marker;
int max_entries;
ResultPtr result;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
};
class RGWRadosRemoveOmapKeysCR : public RGWSimpleCoroutine {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_rados_ref ref;
- set<string> keys;
+ std::set<std::string> keys;
rgw_raw_obj obj;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
public:
- RGWRadosRemoveOmapKeysCR(rgw::sal::RGWRadosStore *_store,
+ RGWRadosRemoveOmapKeysCR(rgw::sal::RadosStore* _store,
const rgw_raw_obj& _obj,
- const set<string>& _keys);
+ const std::set<std::string>& _keys);
int send_request(const DoutPrefixProvider *dpp) override;
};
class RGWRadosRemoveCR : public RGWSimpleCoroutine {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
librados::IoCtx ioctx;
const rgw_raw_obj obj;
RGWObjVersionTracker* objv_tracker;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
public:
- RGWRadosRemoveCR(rgw::sal::RGWRadosStore *store, const rgw_raw_obj& obj,
+ RGWRadosRemoveCR(rgw::sal::RadosStore* store, const rgw_raw_obj& obj,
RGWObjVersionTracker* objv_tracker = nullptr);
int send_request(const DoutPrefixProvider *dpp) override;
class RGWSimpleRadosLockCR : public RGWSimpleCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
- string lock_name;
- string cookie;
+ rgw::sal::RadosStore* store;
+ std::string lock_name;
+ std::string cookie;
uint32_t duration;
rgw_raw_obj obj;
RGWAsyncLockSystemObj *req;
public:
- RGWSimpleRadosLockCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWSimpleRadosLockCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_raw_obj& _obj,
- const string& _lock_name,
- const string& _cookie,
+ const std::string& _lock_name,
+ const std::string& _cookie,
uint32_t _duration);
~RGWSimpleRadosLockCR() override {
request_cleanup();
class RGWSimpleRadosUnlockCR : public RGWSimpleCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
- string lock_name;
- string cookie;
+ rgw::sal::RadosStore* store;
+ std::string lock_name;
+ std::string cookie;
rgw_raw_obj obj;
RGWAsyncUnlockSystemObj *req;
public:
- RGWSimpleRadosUnlockCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWSimpleRadosUnlockCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_raw_obj& _obj,
- const string& _lock_name,
- const string& _cookie);
+ const std::string& _lock_name,
+ const std::string& _cookie);
~RGWSimpleRadosUnlockCR() override {
request_cleanup();
}
#define OMAP_APPEND_MAX_ENTRIES_DEFAULT 100
-class RGWOmapAppend : public RGWConsumerCR<string> {
+class RGWOmapAppend : public RGWConsumerCR<std::string> {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_raw_obj obj;
bool going_down;
int num_pending_entries;
- list<string> pending_entries;
+ std::list<std::string> pending_entries;
- map<string, bufferlist> entries;
+ std::map<std::string, bufferlist> entries;
uint64_t window_size;
uint64_t total_entries;
public:
- RGWOmapAppend(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWOmapAppend(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_raw_obj& _obj,
uint64_t _window_size = OMAP_APPEND_MAX_ENTRIES_DEFAULT);
int operate(const DoutPrefixProvider *dpp) override;
void flush_pending();
- bool append(const string& s);
+ bool append(const std::string& s);
bool finish();
uint64_t get_total_entries() {
class RGWShardedOmapCRManager {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
RGWCoroutine *op;
int num_shards;
- vector<RGWOmapAppend *> shards;
+ std::vector<RGWOmapAppend *> shards;
public:
- RGWShardedOmapCRManager(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store, RGWCoroutine *_op, int _num_shards, const rgw_pool& pool, const string& oid_prefix)
+ RGWShardedOmapCRManager(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store, RGWCoroutine *_op, int _num_shards, const rgw_pool& pool, const std::string& oid_prefix)
: async_rados(_async_rados),
store(_store), op(_op), num_shards(_num_shards) {
shards.reserve(num_shards);
}
}
- bool append(const string& entry, int shard_id) {
+ bool append(const std::string& entry, int shard_id) {
return shards[shard_id]->append(entry);
}
bool finish() {
bool success = true;
- for (vector<RGWOmapAppend *>::iterator iter = shards.begin(); iter != shards.end(); ++iter) {
- success &= ((*iter)->finish() && (!(*iter)->is_error()));
+ for (auto& append_op : shards) {
+ success &= (append_op->finish() && (!append_op->is_error()));
}
return success;
}
};
class RGWAsyncGetBucketInstanceInfo : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_bucket bucket;
const DoutPrefixProvider *dpp;
int _send_request(const DoutPrefixProvider *dpp) override;
public:
RGWAsyncGetBucketInstanceInfo(RGWCoroutine *caller, RGWAioCompletionNotifier *cn,
- rgw::sal::RGWRadosStore *_store, const rgw_bucket& bucket,
+ rgw::sal::RadosStore* _store, const rgw_bucket& bucket,
const DoutPrefixProvider *dpp)
: RGWAsyncRadosRequest(caller, cn), store(_store), bucket(bucket), dpp(dpp) {}
RGWBucketInfo bucket_info;
- map<string, bufferlist> attrs;
+ std::map<std::string, bufferlist> attrs;
};
class RGWGetBucketInstanceInfoCR : public RGWSimpleCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_bucket bucket;
RGWBucketInfo *bucket_info;
- map<string, bufferlist> *pattrs;
+ std::map<std::string, bufferlist> *pattrs;
const DoutPrefixProvider *dpp;
RGWAsyncGetBucketInstanceInfo *req{nullptr};
public:
// rgw_bucket constructor
- RGWGetBucketInstanceInfoCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWGetBucketInstanceInfoCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_bucket& _bucket, RGWBucketInfo *_bucket_info,
- map<string, bufferlist> *_pattrs, const DoutPrefixProvider *dpp)
+ std::map<std::string, bufferlist> *_pattrs, const DoutPrefixProvider *dpp)
: RGWSimpleCoroutine(_store->ctx()), async_rados(_async_rados), store(_store),
bucket(_bucket), bucket_info(_bucket_info), pattrs(_pattrs), dpp(dpp) {}
~RGWGetBucketInstanceInfoCR() override {
};
class RGWRadosBILogTrimCR : public RGWSimpleCoroutine {
+ const RGWBucketInfo& bucket_info;
+ int shard_id;
RGWRados::BucketShard bs;
std::string start_marker;
std::string end_marker;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
public:
RGWRadosBILogTrimCR(const DoutPrefixProvider *dpp,
- rgw::sal::RGWRadosStore *store, const RGWBucketInfo& bucket_info,
+ rgw::sal::RadosStore* store, const RGWBucketInfo& bucket_info,
int shard_id, const std::string& start_marker,
const std::string& end_marker);
};
class RGWAsyncFetchRemoteObj : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_zone_id source_zone;
std::optional<rgw_user> user_id;
protected:
int _send_request(const DoutPrefixProvider *dpp) override;
public:
- RGWAsyncFetchRemoteObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RGWRadosStore *_store,
+ RGWAsyncFetchRemoteObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RadosStore* _store,
const rgw_zone_id& _source_zone,
std::optional<rgw_user>& _user_id,
const rgw_bucket& _src_bucket,
class RGWFetchRemoteObjCR : public RGWSimpleCoroutine {
CephContext *cct;
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_zone_id source_zone;
std::optional<rgw_user> user_id;
const DoutPrefixProvider *dpp;
public:
- RGWFetchRemoteObjCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWFetchRemoteObjCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_zone_id& _source_zone,
std::optional<rgw_user> _user_id,
const rgw_bucket& _src_bucket,
};
class RGWAsyncStatRemoteObj : public RGWAsyncRadosRequest {
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_zone_id source_zone;
rgw_bucket src_bucket;
ceph::real_time *pmtime;
uint64_t *psize;
- string *petag;
- map<string, bufferlist> *pattrs;
- map<string, string> *pheaders;
+ std::string *petag;
+ std::map<std::string, bufferlist> *pattrs;
+ std::map<std::string, std::string> *pheaders;
protected:
int _send_request(const DoutPrefixProvider *dpp) override;
public:
- RGWAsyncStatRemoteObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RGWRadosStore *_store,
+ RGWAsyncStatRemoteObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RadosStore* _store,
const rgw_zone_id& _source_zone,
rgw_bucket& _src_bucket,
const rgw_obj_key& _key,
ceph::real_time *_pmtime,
uint64_t *_psize,
- string *_petag,
- map<string, bufferlist> *_pattrs,
- map<string, string> *_pheaders) : RGWAsyncRadosRequest(caller, cn), store(_store),
+ std::string *_petag,
+ std::map<std::string, bufferlist> *_pattrs,
+ std::map<std::string, std::string> *_pheaders) : RGWAsyncRadosRequest(caller, cn), store(_store),
source_zone(_source_zone),
src_bucket(_src_bucket),
key(_key),
class RGWStatRemoteObjCR : public RGWSimpleCoroutine {
CephContext *cct;
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_zone_id source_zone;
rgw_bucket src_bucket;
ceph::real_time *pmtime;
uint64_t *psize;
- string *petag;
- map<string, bufferlist> *pattrs;
- map<string, string> *pheaders;
+ std::string *petag;
+ std::map<std::string, bufferlist> *pattrs;
+ std::map<std::string, std::string> *pheaders;
RGWAsyncStatRemoteObj *req;
public:
- RGWStatRemoteObjCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWStatRemoteObjCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_zone_id& _source_zone,
rgw_bucket& _src_bucket,
const rgw_obj_key& _key,
ceph::real_time *_pmtime,
uint64_t *_psize,
- string *_petag,
- map<string, bufferlist> *_pattrs,
- map<string, string> *_pheaders) : RGWSimpleCoroutine(_store->ctx()), cct(_store->ctx()),
+ std::string *_petag,
+ std::map<std::string, bufferlist> *_pattrs,
+ std::map<std::string, std::string> *_pheaders) : RGWSimpleCoroutine(_store->ctx()), cct(_store->ctx()),
async_rados(_async_rados), store(_store),
source_zone(_source_zone),
src_bucket(_src_bucket),
class RGWAsyncRemoveObj : public RGWAsyncRadosRequest {
const DoutPrefixProvider *dpp;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_zone_id source_zone;
RGWBucketInfo bucket_info;
rgw_obj_key key;
- string owner;
- string owner_display_name;
+ std::string owner;
+ std::string owner_display_name;
bool versioned;
uint64_t versioned_epoch;
- string marker_version_id;
+ std::string marker_version_id;
bool del_if_older;
ceph::real_time timestamp;
int _send_request(const DoutPrefixProvider *dpp) override;
public:
RGWAsyncRemoveObj(const DoutPrefixProvider *_dpp, RGWCoroutine *caller, RGWAioCompletionNotifier *cn,
- rgw::sal::RGWRadosStore *_store,
+ rgw::sal::RadosStore* _store,
const rgw_zone_id& _source_zone,
RGWBucketInfo& _bucket_info,
const rgw_obj_key& _key,
- const string& _owner,
- const string& _owner_display_name,
+ const std::string& _owner,
+ const std::string& _owner_display_name,
bool _versioned,
uint64_t _versioned_epoch,
bool _delete_marker,
const DoutPrefixProvider *dpp;
CephContext *cct;
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
rgw_zone_id source_zone;
RGWBucketInfo bucket_info;
bool versioned;
uint64_t versioned_epoch;
bool delete_marker;
- string owner;
- string owner_display_name;
+ std::string owner;
+ std::string owner_display_name;
bool del_if_older;
real_time timestamp;
rgw_zone_set *zones_trace;
public:
- RGWRemoveObjCR(const DoutPrefixProvider *_dpp, RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWRemoveObjCR(const DoutPrefixProvider *_dpp, RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_zone_id& _source_zone,
RGWBucketInfo& _bucket_info,
const rgw_obj_key& _key,
bool _versioned,
uint64_t _versioned_epoch,
- string *_owner,
- string *_owner_display_name,
+ std::string *_owner,
+ std::string *_owner_display_name,
bool _delete_marker,
real_time *_timestamp,
rgw_zone_set *_zones_trace) : RGWSimpleCoroutine(_store->ctx()), dpp(_dpp), cct(_store->ctx()),
class RGWContinuousLeaseCR : public RGWCoroutine {
RGWAsyncRadosProcessor *async_rados;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
const rgw_raw_obj obj;
- const string lock_name;
- const string cookie;
+ const std::string lock_name;
+ const std::string cookie;
int interval;
bool going_down{ false };
bool aborted{false};
public:
- RGWContinuousLeaseCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RGWRadosStore *_store,
+ RGWContinuousLeaseCR(RGWAsyncRadosProcessor *_async_rados, rgw::sal::RadosStore* _store,
const rgw_raw_obj& _obj,
- const string& _lock_name, int _interval, RGWCoroutine *_caller)
+ const std::string& _lock_name, int _interval, RGWCoroutine *_caller)
: RGWCoroutine(_store->ctx()), async_rados(_async_rados), store(_store),
obj(_obj), lock_name(_lock_name),
cookie(RGWSimpleRadosLockCR::gen_random_cookie(cct)),
interval(_interval), caller(_caller)
{}
+ virtual ~RGWContinuousLeaseCR() override;
+
int operate(const DoutPrefixProvider *dpp) override;
bool is_locked() const {
class RGWRadosTimelogAddCR : public RGWSimpleCoroutine {
const DoutPrefixProvider *dpp;
- rgw::sal::RGWRadosStore *store;
- list<cls_log_entry> entries;
+ rgw::sal::RadosStore* store;
+ std::list<cls_log_entry> entries;
- string oid;
+ std::string oid;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
public:
- RGWRadosTimelogAddCR(const DoutPrefixProvider *dpp, rgw::sal::RGWRadosStore *_store, const string& _oid,
+ RGWRadosTimelogAddCR(const DoutPrefixProvider *dpp, rgw::sal::RadosStore* _store, const std::string& _oid,
const cls_log_entry& entry);
int send_request(const DoutPrefixProvider *dpp) override;
class RGWRadosTimelogTrimCR : public RGWSimpleCoroutine {
const DoutPrefixProvider *dpp;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
protected:
std::string oid;
public:
RGWRadosTimelogTrimCR(const DoutPrefixProvider *dpp,
- rgw::sal::RGWRadosStore *store, const std::string& oid,
+ rgw::sal::RadosStore* store, const std::string& oid,
const real_time& start_time, const real_time& end_time,
const std::string& from_marker,
const std::string& to_marker);
public:
static constexpr const char* max_marker = "99999999";
- RGWSyncLogTrimCR(const DoutPrefixProvider *dpp,
- rgw::sal::RGWRadosStore *store, const std::string& oid,
+ RGWSyncLogTrimCR(const DoutPrefixProvider *dpp,
+ rgw::sal::RadosStore* store, const std::string& oid,
const std::string& to_marker, std::string *last_trim_marker);
int request_complete() override;
};
class RGWAsyncStatObj : public RGWAsyncRadosRequest {
const DoutPrefixProvider *dpp;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
RGWBucketInfo bucket_info;
rgw_obj obj;
uint64_t *psize;
protected:
int _send_request(const DoutPrefixProvider *dpp) override;
public:
- RGWAsyncStatObj(const DoutPrefixProvider *dpp, RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RGWRadosStore *store,
+ RGWAsyncStatObj(const DoutPrefixProvider *dpp, RGWCoroutine *caller, RGWAioCompletionNotifier *cn, rgw::sal::RadosStore* store,
const RGWBucketInfo& _bucket_info, const rgw_obj& obj, uint64_t *psize = nullptr,
real_time *pmtime = nullptr, uint64_t *pepoch = nullptr,
RGWObjVersionTracker *objv_tracker = nullptr)
class RGWStatObjCR : public RGWSimpleCoroutine {
const DoutPrefixProvider *dpp;
- rgw::sal::RGWRadosStore *store;
+ rgw::sal::RadosStore* store;
RGWAsyncRadosProcessor *async_rados;
RGWBucketInfo bucket_info;
rgw_obj obj;
RGWObjVersionTracker *objv_tracker;
RGWAsyncStatObj *req = nullptr;
public:
- RGWStatObjCR(const DoutPrefixProvider *dpp, RGWAsyncRadosProcessor *async_rados, rgw::sal::RGWRadosStore *store,
+ RGWStatObjCR(const DoutPrefixProvider *dpp, RGWAsyncRadosProcessor *async_rados, rgw::sal::RadosStore* store,
const RGWBucketInfo& _bucket_info, const rgw_obj& obj, uint64_t *psize = nullptr,
real_time* pmtime = nullptr, uint64_t *pepoch = nullptr,
RGWObjVersionTracker *objv_tracker = nullptr);
/// coroutine wrapper for IoCtx::aio_notify()
class RGWRadosNotifyCR : public RGWSimpleCoroutine {
- rgw::sal::RGWRadosStore *const store;
+ rgw::sal::RadosStore* const store;
const rgw_raw_obj obj;
bufferlist request;
const uint64_t timeout_ms;
boost::intrusive_ptr<RGWAioCompletionNotifier> cn;
public:
- RGWRadosNotifyCR(rgw::sal::RGWRadosStore *store, const rgw_raw_obj& obj,
+ RGWRadosNotifyCR(rgw::sal::RadosStore* store, const rgw_raw_obj& obj,
bufferlist& request, uint64_t timeout_ms,
bufferlist *response);