]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
rgw/multisite/datalog: Take driver, not handle.
authorAdam C. Emerson <aemerson@redhat.com>
Wed, 26 Apr 2023 16:12:52 +0000 (12:12 -0400)
committerAdam C. Emerson <aemerson@redhat.com>
Tue, 1 Apr 2025 15:10:13 +0000 (11:10 -0400)
Since we're plumbing the driver around and it's where our neorados
handle lives.

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

index d223932bb2cfd07e7ef5ae618e9e81f7c9a23f99..49371553ca7ce9ffd62738d7a85299c17f47716b 100644 (file)
@@ -21,6 +21,7 @@
 #include "rgw_datalog.h"
 #include "rgw_log_backing.h"
 #include "rgw_tools.h"
+#include "rgw_sal_rados.h"
 
 #define dout_context g_ceph_context
 static constexpr auto dout_subsys = ceph_subsys_rgw;
@@ -489,7 +490,7 @@ bs::error_code DataLogBackends::handle_empty_to(uint64_t new_tail) noexcept {
 
 int RGWDataChangesLog::start(const DoutPrefixProvider *dpp, const RGWZone* _zone,
                             const RGWZoneParams& zoneparams,
-                            librados::Rados* lr)
+                            rgw::sal::RadosStore* store)
 {
   zone = _zone;
   ceph_assert(zone);
@@ -498,7 +499,7 @@ int RGWDataChangesLog::start(const DoutPrefixProvider *dpp, const RGWZone* _zone
   // Should be guaranteed by `set_enum_allowed`
   ceph_assert(defbacking);
   auto log_pool = zoneparams.log_pool;
-  auto r = rgw_init_ioctx(dpp, lr, log_pool, ioctx, true, false);
+  auto r = rgw_init_ioctx(dpp, store->getRados()->get_rados_handle(), log_pool, ioctx, true, false);
   if (r < 0) {
     ldpp_dout(dpp, -1) << __PRETTY_FUNCTION__
               << ": Failed to initialized ioctx, r=" << r
index 7efa3e57223258a7414287e80377b8f7fb753dab..a86efb4162d7cb685662f593ecf2d8146f9a0b04 100644 (file)
@@ -292,7 +292,7 @@ public:
   ~RGWDataChangesLog();
 
   int start(const DoutPrefixProvider *dpp, const RGWZone* _zone, const RGWZoneParams& zoneparams,
-           librados::Rados* lr);
+           rgw::sal::RadosStore* store);
   int choose_oid(const rgw_bucket_shard& bs);
   int add_entry(const DoutPrefixProvider *dpp, const RGWBucketInfo& bucket_info,
                const rgw::bucket_log_layout_generation& gen, int shard_id,
index 784fefd0bcba7eb49fe15548c041b1e77f23c2ba..7de23f223410c49460339afd0b5e1d8ff28cffb5 100644 (file)
@@ -136,7 +136,7 @@ int RGWServices_Def::init(CephContext *cct,
 
     r = datalog_rados->start(dpp, &zone->get_zone(),
                             zone->get_zone_params(),
-                            driver->getRados()->get_rados_handle());
+                            driver);
     if (r < 0) {
       ldpp_dout(dpp, 0) << "ERROR: failed to start datalog_rados service (" << cpp_strerror(-r) << dendl;
       return r;