From: Adam C. Emerson Date: Fri, 2 Dec 2022 07:30:39 +0000 (-0500) Subject: rgw: Remove `RGWSI_RADOS` from `RGWSI_Zone` X-Git-Tag: v19.0.0~21^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5294d668d5c9961fc38fd6d9992175261983deff;p=ceph.git rgw: Remove `RGWSI_RADOS` from `RGWSI_Zone` Simply use the RADOS handle directly. Signed-off-by: Adam C. Emerson --- diff --git a/src/rgw/driver/rados/rgw_service.cc b/src/rgw/driver/rados/rgw_service.cc index ddd4dfdcd74f..b9b2d2a8415a 100644 --- a/src/rgw/driver/rados/rgw_service.cc +++ b/src/rgw/driver/rados/rgw_service.cc @@ -109,7 +109,7 @@ int RGWServices_Def::init(CephContext *cct, 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()); diff --git a/src/rgw/services/svc_zone.cc b/src/rgw/services/svc_zone.cc index 8bb55e4513d2..a44d53727b16 100644 --- a/src/rgw/services/svc_zone.cc +++ b/src/rgw/services/svc_zone.cc @@ -6,6 +6,7 @@ #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" @@ -23,12 +24,12 @@ RGWSI_Zone::RGWSI_Zone(CephContext *cct) : RGWServiceInstance(cct) } 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; @@ -134,11 +135,6 @@ int RGWSI_Zone::do_start(optional_yield y, const DoutPrefixProvider *dpp) 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; diff --git a/src/rgw/services/svc_zone.h b/src/rgw/services/svc_zone.h index 3891b73ddb4d..c4a3a28f0d7b 100644 --- a/src/rgw/services/svc_zone.h +++ b/src/rgw/services/svc_zone.h @@ -6,7 +6,6 @@ #include "rgw_service.h" -class RGWSI_RADOS; class RGWSI_SysObj; class RGWSI_SyncModules; class RGWSI_Bucket_Sync; @@ -29,7 +28,7 @@ class RGWSI_Zone : public RGWServiceInstance 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}; @@ -58,7 +57,7 @@ class RGWSI_Zone : public RGWServiceInstance std::unique_ptr 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;