]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: Remove `RGWSI_RADOS` from `RGWSI_Zone`
authorAdam C. Emerson <aemerson@redhat.com>
Fri, 2 Dec 2022 07:30:39 +0000 (02:30 -0500)
committerCasey Bodley <cbodley@redhat.com>
Wed, 29 Nov 2023 18:15:27 +0000 (13:15 -0500)
Simply use the RADOS handle directly.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
src/rgw/driver/rados/rgw_service.cc
src/rgw/services/svc_zone.cc
src/rgw/services/svc_zone.h

index ddd4dfdcd74f451e6677c8e60951e3a870b68db9..b9b2d2a8415a5d8b6a234b048aa9d46e802a29f5 100644 (file)
@@ -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());
index 8bb55e4513d2549d47b57be001719fb4f6dfc468..a44d53727b16a98be167f53e2f8c4a33ec2515ce 100644 (file)
@@ -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;
index 3891b73ddb4d8b7418cba77518567247f0b2114f..c4a3a28f0d7b0c2a49a193e4068346bb4fd079ac 100644 (file)
@@ -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<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;