Simply use the RADOS handle directly.
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
notify->init(zone.get(), radoshandle, finisher.get());
otp->init(zone.get(), meta.get(), meta_be_otp.get());
rados->init();
- zone->init(sysobj.get(), rados.get(), sync_modules.get(), bucket_sync_sobj.get());
+ zone->init(sysobj.get(), radoshandle, sync_modules.get(), bucket_sync_sobj.get());
zone_utils->init(rados.get(), zone.get());
quota->init(zone.get());
sync_modules->init(zone.get());
#include "svc_sys_obj.h"
#include "svc_sync_modules.h"
+#include "rgw_tools.h"
#include "rgw_zone.h"
#include "rgw_rest_conn.h"
#include "rgw_bucket_sync.h"
}
void RGWSI_Zone::init(RGWSI_SysObj *_sysobj_svc,
- RGWSI_RADOS * _rados_svc,
+ librados::Rados* rados_,
RGWSI_SyncModules * _sync_modules_svc,
RGWSI_Bucket_Sync *_bucket_sync_svc)
{
sysobj_svc = _sysobj_svc;
- rados_svc = _rados_svc;
+ rados = rados_;
sync_modules_svc = _sync_modules_svc;
bucket_sync_svc = _bucket_sync_svc;
assert(sysobj_svc->is_started()); /* if not then there's ordering issue */
- ret = rados_svc->start(y, dpp);
- if (ret < 0) {
- return ret;
- }
-
ret = realm->init(dpp, cct, sysobj_svc, y);
if (ret < 0 && ret != -ENOENT) {
ldpp_dout(dpp, 0) << "failed reading realm info: ret "<< ret << " " << cpp_strerror(-ret) << dendl;
#include "rgw_service.h"
-class RGWSI_RADOS;
class RGWSI_SysObj;
class RGWSI_SyncModules;
class RGWSI_Bucket_Sync;
friend struct RGWServices_Def;
RGWSI_SysObj *sysobj_svc{nullptr};
- RGWSI_RADOS *rados_svc{nullptr};
+ librados::Rados* rados{nullptr};
RGWSI_SyncModules *sync_modules_svc{nullptr};
RGWSI_Bucket_Sync *bucket_sync_svc{nullptr};
std::unique_ptr<rgw_sync_policy_info> sync_policy;
void init(RGWSI_SysObj *_sysobj_svc,
- RGWSI_RADOS *_rados_svc,
+ librados::Rados* rados_,
RGWSI_SyncModules *_sync_modules_svc,
RGWSI_Bucket_Sync *_bucket_sync_svc);
int do_start(optional_yield y, const DoutPrefixProvider *dpp) override;