diff options
Diffstat (limited to 'src/rgw/rgw_sal.cc')
-rw-r--r-- | src/rgw/rgw_sal.cc | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/rgw/rgw_sal.cc b/src/rgw/rgw_sal.cc index 6c0212dae81..a70813435bc 100644 --- a/src/rgw/rgw_sal.cc +++ b/src/rgw/rgw_sal.cc @@ -46,7 +46,7 @@ #define dout_subsys ceph_subsys_rgw extern "C" { -extern rgw::sal::Driver* newRadosStore(void); +extern rgw::sal::Driver* newRadosStore(boost::asio::io_context* io_context); #ifdef WITH_RADOSGW_DBSTORE extern rgw::sal::Driver* newDBStore(CephContext *cct); #endif @@ -103,6 +103,7 @@ RGWObjState::RGWObjState(const RGWObjState& rhs) : obj (rhs.obj) { rgw::sal::Driver* DriverManager::init_storage_provider(const DoutPrefixProvider* dpp, CephContext* cct, const Config& cfg, + boost::asio::io_context& io_context, bool use_gc_thread, bool use_lc_thread, bool quota_threads, @@ -115,7 +116,7 @@ rgw::sal::Driver* DriverManager::init_storage_provider(const DoutPrefixProvider* rgw::sal::Driver* driver{nullptr}; if (cfg.store_name.compare("rados") == 0) { - driver = newRadosStore(); + driver = newRadosStore(&io_context); RGWRados* rados = static_cast<rgw::sal::RadosStore* >(driver)->getRados(); if ((*rados).set_use_cache(use_cache) @@ -141,7 +142,7 @@ rgw::sal::Driver* DriverManager::init_storage_provider(const DoutPrefixProvider* } } else if (cfg.store_name.compare("d3n") == 0) { - driver = new rgw::sal::RadosStore(); + driver = new rgw::sal::RadosStore(io_context); RGWRados* rados = new D3nRGWDataCache<RGWRados>; dynamic_cast<rgw::sal::RadosStore*>(driver)->setRados(rados); rados->set_store(static_cast<rgw::sal::RadosStore* >(driver)); @@ -261,11 +262,11 @@ rgw::sal::Driver* DriverManager::init_storage_provider(const DoutPrefixProvider* return driver; } -rgw::sal::Driver* DriverManager::init_raw_storage_provider(const DoutPrefixProvider* dpp, CephContext* cct, const Config& cfg) +rgw::sal::Driver* DriverManager::init_raw_storage_provider(const DoutPrefixProvider* dpp, CephContext* cct, const Config& cfg, boost::asio::io_context& io_context) { rgw::sal::Driver* driver = nullptr; if (cfg.store_name.compare("rados") == 0) { - driver = newRadosStore(); + driver = newRadosStore(&io_context); RGWRados* rados = static_cast<rgw::sal::RadosStore* >(driver)->getRados(); rados->set_context(cct); |