]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw/service: remove unused metadata and metadata backend services 54777/head
authorCasey Bodley <cbodley@redhat.com>
Mon, 4 Dec 2023 22:38:45 +0000 (17:38 -0500)
committerCasey Bodley <cbodley@redhat.com>
Thu, 12 Sep 2024 20:55:01 +0000 (16:55 -0400)
Signed-off-by: Casey Bodley <cbodley@redhat.com>
28 files changed:
src/rgw/CMakeLists.txt
src/rgw/driver/rados/rgw_bucket.cc
src/rgw/driver/rados/rgw_bucket.h
src/rgw/driver/rados/rgw_metadata.h
src/rgw/driver/rados/rgw_sal_rados.cc
src/rgw/driver/rados/rgw_service.cc
src/rgw/driver/rados/rgw_service.h
src/rgw/driver/rados/rgw_trim_bilog.cc
src/rgw/driver/rados/rgw_trim_mdlog.cc
src/rgw/driver/rados/rgw_user.cc
src/rgw/rgw_mdlog.h
src/rgw/rgw_metadata.cc
src/rgw/rgw_quota.cc
src/rgw/rgw_role.cc
src/rgw/services/svc_bucket_sobj.cc
src/rgw/services/svc_bucket_sobj.h
src/rgw/services/svc_bucket_sync_sobj.h
src/rgw/services/svc_mdlog.h
src/rgw/services/svc_meta.cc [deleted file]
src/rgw/services/svc_meta.h [deleted file]
src/rgw/services/svc_meta_be.cc [deleted file]
src/rgw/services/svc_meta_be.h [deleted file]
src/rgw/services/svc_meta_be_params.h [deleted file]
src/rgw/services/svc_meta_be_sobj.cc [deleted file]
src/rgw/services/svc_meta_be_sobj.h [deleted file]
src/rgw/services/svc_meta_be_types.h [deleted file]
src/rgw/services/svc_user_rados.cc
src/rgw/services/svc_user_rados.h

index 9f9099f31638f5fd5afc1cfd6a7e386b04bfc6b1..329b01d2cacce8c4234fdd1909e3b1d9489c6276 100644 (file)
@@ -40,9 +40,6 @@ set(librgw_common_srcs
   services/svc_cls.cc
   services/svc_config_key_rados.cc
   services/svc_mdlog.cc
-  services/svc_meta.cc
-  services/svc_meta_be.cc
-  services/svc_meta_be_sobj.cc
   services/svc_notify.cc
   services/svc_quota.cc
   services/svc_sync_modules.cc
index 3152aedd85fb44773a639b3f5eb1a4a39d97bbea..21d238d33418010c69627a22a1de96881c256bf7 100644 (file)
@@ -3099,7 +3099,6 @@ int RGWBucketCtl::read_bucket_info(const rgw_bucket& bucket,
     ep.emplace();
 
     int r = read_bucket_entrypoint_info(*b, &(*ep), y, dpp, RGWBucketCtl::Bucket::GetParams()
-                                                    .set_bectx_params(params.bectx_params)
                                                     .set_objv_tracker(ep_objv_tracker));
     if (r < 0) {
       return r;
index a93a02a274b0c2118ac998da00ddc754292a19f3..85434ba7299cbe4dcfcfef2a2e58d7af202cabc9 100644 (file)
@@ -31,7 +31,6 @@
 // define as static when RGWBucket implementation completes
 extern void rgw_get_buckets_obj(const rgw_user& user_id, std::string& buckets_obj_id);
 
-class RGWSI_Meta;
 class RGWBucketMetadataHandler;
 class RGWBucketInstanceMetadataHandler;
 class RGWUserCtl;
@@ -449,7 +448,6 @@ public:
       std::map<std::string, bufferlist> *attrs{nullptr};
       rgw_cache_entry_info *cache_info{nullptr};
       boost::optional<obj_version> refresh_version;
-      std::optional<RGWSI_MetaBackend_CtxParams> bectx_params;
 
       GetParams() {}
 
@@ -477,11 +475,6 @@ public:
         refresh_version = _refresh_version;
         return *this;
       }
-
-      GetParams& set_bectx_params(std::optional<RGWSI_MetaBackend_CtxParams> _bectx_params) {
-        bectx_params = _bectx_params;
-        return *this;
-      }
     };
 
     struct PutParams {
@@ -532,7 +525,6 @@ public:
       rgw_cache_entry_info *cache_info{nullptr};
       boost::optional<obj_version> refresh_version;
       RGWObjVersionTracker *objv_tracker{nullptr};
-      std::optional<RGWSI_MetaBackend_CtxParams> bectx_params;
 
       GetParams() {}
 
@@ -560,11 +552,6 @@ public:
         objv_tracker = _objv_tracker;
         return *this;
       }
-
-      GetParams& set_bectx_params(std::optional<RGWSI_MetaBackend_CtxParams> _bectx_params) {
-        bectx_params = _bectx_params;
-        return *this;
-      }
     };
 
     struct PutParams {
index c83db7c40437bf041eced51fc0de057c75bc6a87..30425542a1b96237ebd3f8825718594503031922 100644 (file)
@@ -15,7 +15,6 @@
 #include "cls/log/cls_log_types.h"
 #include "common/RefCountedObj.h"
 #include "common/ceph_time.h"
-#include "services/svc_meta_be.h"
 #include "rgw_sal_fwd.h"
 
 
@@ -54,18 +53,11 @@ class RGWMetadataManager;
 class RGWMetadataHandler {
   friend class RGWMetadataManager;
 
-protected:
-  CephContext *cct;
-
 public:
   RGWMetadataHandler() {}
   virtual ~RGWMetadataHandler();
   virtual std::string get_type() = 0;
 
-  void base_init(CephContext *_cct) {
-    cct = _cct;
-  }
-
   virtual RGWMetadataObject *get_meta_obj(JSONObj *jo, const obj_version& objv, const ceph::real_time& mtime) = 0;
 
   virtual int get(std::string& entry, RGWMetadataObject **obj, optional_yield, const DoutPrefixProvider *dpp) = 0;
@@ -99,132 +91,12 @@ public:
   virtual int attach(RGWMetadataManager *manager);
 };
 
-class RGWMetadataHandler_GenericMetaBE : public RGWMetadataHandler {
-  friend class RGWSI_MetaBackend;
-  friend class RGWMetadataManager;
-  friend class Put;
-
-public:
-  class Put;
-
-protected:
-  RGWSI_MetaBackend_Handler *be_handler;
-
-  virtual int do_get(RGWSI_MetaBackend_Handler::Op *op, std::string& entry, RGWMetadataObject **obj, optional_yield y, const DoutPrefixProvider *dpp) = 0;
-  virtual int do_put(RGWSI_MetaBackend_Handler::Op *op, std::string& entry, RGWMetadataObject *obj,
-                     RGWObjVersionTracker& objv_tracker, optional_yield y,
-                     const DoutPrefixProvider *dpp, RGWMDLogSyncType type, 
-                     bool from_remote_zone) = 0;
-  virtual int do_put_operate(Put *put_op, const DoutPrefixProvider *dpp);
-  virtual int do_remove(RGWSI_MetaBackend_Handler::Op *op, std::string& entry, RGWObjVersionTracker& objv_tracker, optional_yield y, const DoutPrefixProvider *dpp) = 0;
-
-public:
-  RGWMetadataHandler_GenericMetaBE() {}
-
-  void base_init(CephContext *_cct,
-            RGWSI_MetaBackend_Handler *_be_handler) {
-    RGWMetadataHandler::base_init(_cct);
-    be_handler = _be_handler;
-  }
-
-  RGWSI_MetaBackend_Handler *get_be_handler() {
-    return be_handler;
-  }
-
-  class Put {
-  protected:
-    RGWMetadataHandler_GenericMetaBE *handler;
-    RGWSI_MetaBackend_Handler::Op *op;
-    std::string& entry;
-    RGWMetadataObject *obj;
-    RGWObjVersionTracker& objv_tracker;
-    RGWMDLogSyncType apply_type;
-    optional_yield y;
-    bool from_remote_zone{false};
-
-    int get(RGWMetadataObject **obj, const DoutPrefixProvider *dpp) {
-      return handler->do_get(op, entry, obj, y, dpp);
-    }
-  public:
-    Put(RGWMetadataHandler_GenericMetaBE *_handler, RGWSI_MetaBackend_Handler::Op *_op,
-        std::string& _entry, RGWMetadataObject *_obj,
-        RGWObjVersionTracker& _objv_tracker, optional_yield _y,
-        RGWMDLogSyncType _type, bool from_remote_zone);
-
-    virtual ~Put() {}
-
-    virtual int put_pre(const DoutPrefixProvider *dpp) {
-      return 0;
-    }
-    virtual int put(const DoutPrefixProvider *dpp) {
-      return 0;
-    }
-    virtual int put_post(const DoutPrefixProvider *dpp) {
-      return 0;
-    }
-    virtual int finalize() {
-      return 0;
-    }
-  };
-
-  int get(std::string& entry, RGWMetadataObject **obj, optional_yield, const DoutPrefixProvider *dpp) override;
-  int put(std::string& entry, RGWMetadataObject *obj, RGWObjVersionTracker& objv_tracker, optional_yield, const DoutPrefixProvider *dpp, RGWMDLogSyncType type, bool from_remote_zone) override;
-  int remove(std::string& entry, RGWObjVersionTracker& objv_tracker, optional_yield, const DoutPrefixProvider *dpp) override;
-
-  int mutate(const std::string& entry,
-            const ceph::real_time& mtime,
-            RGWObjVersionTracker *objv_tracker,
-             optional_yield y,
-             const DoutPrefixProvider *dpp,
-            RGWMDLogStatus op_type,
-            std::function<int()> f) override;
-
-  int get_shard_id(const std::string& entry, int *shard_id) override;
-
-  int list_keys_init(const DoutPrefixProvider *dpp, const std::string& marker, void **phandle) override;
-  int list_keys_next(const DoutPrefixProvider *dpp, void *handle, int max, std::list<std::string>& keys, bool *truncated) override;
-  void list_keys_complete(void *handle) override;
-
-  std::string get_marker(void *handle) override;
-
-  /**
-   * Compare an incoming versus on-disk tag/version+mtime combo against
-   * the sync mode to see if the new one should replace the on-disk one.
-   *
-   * @return true if the update should proceed, false otherwise.
-   */
-  static bool check_versions(bool exists,
-                             const obj_version& ondisk, const real_time& ondisk_time,
-                             const obj_version& incoming, const real_time& incoming_time,
-                             RGWMDLogSyncType sync_mode) {
-    switch (sync_mode) {
-    case APPLY_UPDATES:
-      if ((ondisk.tag != incoming.tag) ||
-         (ondisk.ver >= incoming.ver))
-       return false;
-      break;
-    case APPLY_NEWER:
-      if (ondisk_time >= incoming_time)
-       return false;
-      break;
-    case APPLY_EXCLUSIVE:
-      if (exists)
-        return false;
-      break;
-    case APPLY_ALWAYS: //deliberate fall-thru -- we always apply!
-    default: break;
-    }
-    return true;
-  }
-};
-
 class RGWMetadataTopHandler;
 
 class RGWMetadataManager {
   friend class RGWMetadataHandler;
 
   CephContext *cct;
-  RGWSI_Meta *meta_svc;
   std::map<std::string, RGWMetadataHandler *> handlers;
   std::unique_ptr<RGWMetadataTopHandler> md_top_handler;
 
@@ -232,7 +104,7 @@ class RGWMetadataManager {
   int register_handler(RGWMetadataHandler *handler);
 
 public:
-  RGWMetadataManager(RGWSI_Meta *_meta_svc);
+  RGWMetadataManager();
   ~RGWMetadataManager();
 
   RGWMetadataHandler *get_handler(const std::string& type);
@@ -269,29 +141,6 @@ public:
   int get_shard_id(const std::string& section, const std::string& key, int *shard_id);
 };
 
-class RGWMetadataHandlerPut_SObj : public RGWMetadataHandler_GenericMetaBE::Put
-{
-protected:
-  std::unique_ptr<RGWMetadataObject> oo;
-  RGWMetadataObject *old_obj{nullptr};
-  bool exists{false};
-
-public:
-  RGWMetadataHandlerPut_SObj(RGWMetadataHandler_GenericMetaBE *handler, RGWSI_MetaBackend_Handler::Op *op,
-                             std::string& entry, RGWMetadataObject *obj, RGWObjVersionTracker& objv_tracker,
-                            optional_yield y,
-                             RGWMDLogSyncType type, bool from_remote_zone);
-  ~RGWMetadataHandlerPut_SObj();
-
-  int put_pre(const DoutPrefixProvider *dpp) override;
-  int put(const DoutPrefixProvider *dpp) override;
-  virtual int put_check(const DoutPrefixProvider *dpp) {
-    return 0;
-  }
-  virtual int put_checked(const DoutPrefixProvider *dpp);
-  virtual void encode_obj(bufferlist *bl) {}
-};
-
 void rgw_shard_name(const std::string& prefix, unsigned max_shards, const std::string& key, std::string& name, int *shard_id);
 void rgw_shard_name(const std::string& prefix, unsigned max_shards, const std::string& section, const std::string& key, std::string& name);
 void rgw_shard_name(const std::string& prefix, unsigned shard_id, std::string& name);
index 2969eb9bd1a6d4ddb8a53909be08badc7ed816bd..91b3cc0264887d08f2c6571366ed9497a5f18ff0 100644 (file)
@@ -57,8 +57,6 @@
 #include "rgw_rest_user.h"
 #include "services/svc_sys_obj.h"
 #include "services/svc_mdlog.h"
-#include "services/svc_meta.h"
-#include "services/svc_meta_be_sobj.h"
 #include "services/svc_cls.h"
 #include "services/svc_bilog_rados.h"
 #include "services/svc_bi_rados.h"
@@ -572,21 +570,18 @@ int RadosBucket::load_bucket(const DoutPrefixProvider* dpp, optional_yield y)
 {
   int ret;
 
-  RGWSI_MetaBackend_CtxParams bectx_params = RGWSI_MetaBackend_CtxParams_SObj();
   RGWObjVersionTracker ep_ot;
   if (info.bucket.bucket_id.empty()) {
     ret = store->ctl()->bucket->read_bucket_info(info.bucket, &info, y, dpp,
                                      RGWBucketCtl::BucketInstance::GetParams()
                                      .set_mtime(&mtime)
-                                     .set_attrs(&attrs)
-                                      .set_bectx_params(bectx_params),
+                                     .set_attrs(&attrs),
                                      &ep_ot);
   } else {
     ret  = store->ctl()->bucket->read_bucket_instance_info(info.bucket, &info, y, dpp,
                                      RGWBucketCtl::BucketInstance::GetParams()
                                      .set_mtime(&mtime)
-                                     .set_attrs(&attrs)
-                                     .set_bectx_params(bectx_params));
+                                     .set_attrs(&attrs));
   }
   if (ret != 0) {
     return ret;
index cc8bd3f06af05acbe02ea0bb646b0d8192d5c361..784fefd0bcba7eb49fe15548c041b1e77f23c2ba 100644 (file)
@@ -11,9 +11,6 @@
 #include "services/svc_cls.h"
 #include "services/svc_config_key_rados.h"
 #include "services/svc_mdlog.h"
-#include "services/svc_meta.h"
-#include "services/svc_meta_be.h"
-#include "services/svc_meta_be_sobj.h"
 #include "services/svc_notify.h"
 #include "services/svc_zone.h"
 #include "services/svc_zone_utils.h"
@@ -66,8 +63,6 @@ int RGWServices_Def::init(CephContext *cct,
   config_key_rados = std::make_unique<RGWSI_ConfigKey_RADOS>(cct);
   datalog_rados = std::make_unique<RGWDataChangesLog>(cct);
   mdlog = std::make_unique<RGWSI_MDLog>(cct, run_sync);
-  meta = std::make_unique<RGWSI_Meta>(cct);
-  meta_be_sobj = std::make_unique<RGWSI_MetaBackend_SObj>(cct);
   notify = std::make_unique<RGWSI_Notify>(cct);
   zone = std::make_unique<RGWSI_Zone>(cct);
   zone_utils = std::make_unique<RGWSI_ZoneUtils>(cct);
@@ -83,15 +78,13 @@ int RGWServices_Def::init(CephContext *cct,
     sysobj_cache = std::make_unique<RGWSI_SysObj_Cache>(dpp, cct);
   }
 
-  vector<RGWSI_MetaBackend *> meta_bes{meta_be_sobj.get()};
-
   async_processor->start();
   finisher->init();
   bi_rados->init(zone.get(), driver->getRados()->get_rados_handle(),
                 bilog_rados.get(), datalog_rados.get());
   bilog_rados->init(bi_rados.get());
   bucket_sobj->init(zone.get(), sysobj.get(), sysobj_cache.get(),
-                    bi_rados.get(), meta.get(), mdlog.get(),
+                    bi_rados.get(), mdlog.get(),
                     sync_modules.get(), bucket_sync_sobj.get());
   bucket_sync_sobj->init(zone.get(),
                          sysobj.get(),
@@ -101,8 +94,6 @@ int RGWServices_Def::init(CephContext *cct,
   config_key_rados->init(driver->getRados()->get_rados_handle());
   mdlog->init(driver->getRados()->get_rados_handle(), zone.get(), sysobj.get(),
              cls.get(), async_processor.get());
-  meta->init(sysobj.get(), mdlog.get(), meta_bes);
-  meta_be_sobj->init(sysobj.get(), mdlog.get());
   notify->init(zone.get(), driver->getRados()->get_rados_handle(),
               finisher.get());
   zone->init(sysobj.get(), driver->getRados()->get_rados_handle(),
@@ -117,8 +108,8 @@ int RGWServices_Def::init(CephContext *cct,
   } else {
     sysobj->init(driver->getRados()->get_rados_handle(), sysobj_core.get());
   }
-  user_rados->init(driver->getRados()->get_rados_handle(), zone.get(), mdlog.get(),
-                   sysobj.get(), sysobj_cache.get(), meta.get());
+  user_rados->init(driver->getRados()->get_rados_handle(), zone.get(),
+                   mdlog.get(), sysobj.get(), sysobj_cache.get());
 
   can_shutdown = true;
 
@@ -209,18 +200,6 @@ int RGWServices_Def::init(CephContext *cct,
   }
 
   if (!raw) {
-    r = meta_be_sobj->start(y, dpp);
-    if (r < 0) {
-      ldpp_dout(dpp, 0) << "ERROR: failed to start meta_be_sobj service (" << cpp_strerror(-r) << dendl;
-      return r;
-    }
-
-    r = meta->start(y, dpp);
-    if (r < 0) {
-      ldpp_dout(dpp, 0) << "ERROR: failed to start meta service (" << cpp_strerror(-r) << dendl;
-      return r;
-    }
-
     r = bucket_sobj->start(y, dpp);
     if (r < 0) {
       ldpp_dout(dpp, 0) << "ERROR: failed to start bucket service (" << cpp_strerror(-r) << dendl;
@@ -259,8 +238,6 @@ void RGWServices_Def::shutdown()
   user_rados->shutdown();
   sync_modules->shutdown();
   notify->shutdown();
-  meta_be_sobj->shutdown();
-  meta->shutdown();
   mdlog->shutdown();
   config_key_rados->shutdown();
   cls->shutdown();
@@ -307,8 +284,6 @@ int RGWServices::do_init(CephContext *_cct, rgw::sal::RadosStore* driver, bool h
   config_key = config_key_rados;
   datalog_rados = _svc.datalog_rados.get();
   mdlog = _svc.mdlog.get();
-  meta = _svc.meta.get();
-  meta_be_sobj = _svc.meta_be_sobj.get();
   notify = _svc.notify.get();
   zone = _svc.zone.get();
   zone_utils = _svc.zone_utils.get();
@@ -353,7 +328,7 @@ RGWCtlDef::_meta::~_meta() {}
 int RGWCtlDef::init(RGWServices& svc, rgw::sal::Driver* driver,
                     librados::Rados& rados, const DoutPrefixProvider *dpp)
 {
-  meta.mgr.reset(new RGWMetadataManager(svc.meta));
+  meta.mgr.reset(new RGWMetadataManager());
 
   meta.user = create_user_metadata_handler(svc.user);
 
index e2b53c9cd9257042948e90f69b5663b596539e84..202f40d20b31e4ffa7633813609ea5f0cc82b049 100644 (file)
@@ -62,10 +62,6 @@ class RGWSI_Cls;
 class RGWSI_ConfigKey;
 class RGWSI_ConfigKey_RADOS;
 class RGWSI_MDLog;
-class RGWSI_Meta;
-class RGWSI_MetaBackend;
-class RGWSI_MetaBackend_SObj;
-class RGWSI_MetaBackend_OTP;
 class RGWSI_Notify;
 class RGWSI_OTP;
 class RGWSI_Zone;
@@ -93,8 +89,6 @@ struct RGWServices_Def
   std::unique_ptr<RGWSI_Cls> cls;
   std::unique_ptr<RGWSI_ConfigKey_RADOS> config_key_rados;
   std::unique_ptr<RGWSI_MDLog> mdlog;
-  std::unique_ptr<RGWSI_Meta> meta;
-  std::unique_ptr<RGWSI_MetaBackend_SObj> meta_be_sobj;
   std::unique_ptr<RGWSI_Notify> notify;
   std::unique_ptr<RGWSI_Zone> zone;
   std::unique_ptr<RGWSI_ZoneUtils> zone_utils;
@@ -138,8 +132,6 @@ struct RGWServices
   RGWSI_ConfigKey *config_key{nullptr};
   RGWDataChangesLog *datalog_rados{nullptr};
   RGWSI_MDLog *mdlog{nullptr};
-  RGWSI_Meta *meta{nullptr};
-  RGWSI_MetaBackend *meta_be_sobj{nullptr};
   RGWSI_Notify *notify{nullptr};
   RGWSI_Zone *zone{nullptr};
   RGWSI_ZoneUtils *zone_utils{nullptr};
index db9980470055ee01e376e3e35d6cd7e9251da00a..d9960289a851984029f95d8ec7cae3709cca78d5 100644 (file)
@@ -33,7 +33,6 @@
 #include "rgw_bucket.h"
 
 #include "services/svc_zone.h"
-#include "services/svc_meta.h"
 #include "services/svc_bilog_rados.h"
 
 #include <boost/asio/yield.hpp>
index be513b6e74df19a0cd822bbe41010e72ef48108e..26b458c406960cb9597e057ae3582c04db535816 100644 (file)
@@ -9,7 +9,6 @@
 #include "rgw_cr_rest.h"
 #include "rgw_zone.h"
 #include "services/svc_zone.h"
-#include "services/svc_meta.h"
 #include "services/svc_mdlog.h"
 #include "services/svc_cls.h"
 
index d26495d9b0f3fe0e74cf3ae82c997849472d7795..94a18ffcbab75a51da77c55305c5133ad88b8704 100644 (file)
@@ -13,7 +13,6 @@
 #include "rgw_rest_iam.h" // validate_iam_user_name()
 
 #include "services/svc_user.h"
-#include "services/svc_meta.h"
 
 #define dout_subsys ceph_subsys_rgw
 
index 6c78fd384085835867d6be4f9513aa2faf5a2033..4817dded9dbecfb5cd80073814fbf2cb96cbe73c 100644 (file)
@@ -26,6 +26,9 @@
 
 #define META_LOG_OBJ_PREFIX "meta.log."
 
+class RGWSI_Cls;
+class RGWSI_Zone;
+
 struct RGWMetadataLogInfo {
   std::string marker;
   real_time last_update;
index a6d75de0eba12ecffc9d12009f4400443e6482a0..92b03e41bcdc15a15e7c90399e7ffe716850ec51 100644 (file)
@@ -5,10 +5,6 @@
 
 #include "rgw_mdlog.h"
 
-
-#include "services/svc_meta.h"
-#include "services/svc_meta_be_sobj.h"
-
 #define dout_subsys ceph_subsys_rgw
 
 using namespace std;
@@ -111,214 +107,16 @@ void RGWMetadataLogData::generate_test_instances(std::list<RGWMetadataLogData *>
   l.back()->status = MDLOG_STATUS_WRITE;
 }
 
-RGWMetadataHandler_GenericMetaBE::Put::Put(RGWMetadataHandler_GenericMetaBE *_handler,
-                                          RGWSI_MetaBackend_Handler::Op *_op,
-                                          string& _entry, RGWMetadataObject *_obj,
-                                          RGWObjVersionTracker& _objv_tracker,
-                                          optional_yield _y,
-                                          RGWMDLogSyncType _type, bool _from_remote_zone):
-  handler(_handler), op(_op),
-  entry(_entry), obj(_obj),
-  objv_tracker(_objv_tracker),
-  apply_type(_type),
-  y(_y),
-  from_remote_zone(_from_remote_zone)
-{
-}
-
-int RGWMetadataHandler_GenericMetaBE::do_put_operate(Put *put_op, const DoutPrefixProvider *dpp)
-{
-  int r = put_op->put_pre(dpp);
-  if (r != 0) { /* r can also be STATUS_NO_APPLY */
-    return r;
-  }
-
-  r = put_op->put(dpp);
-  if (r != 0) {
-    return r;
-  }
-
-  r = put_op->put_post(dpp);
-  if (r != 0) {  /* e.g., -error or STATUS_APPLIED */
-    return r;
-  }
-
-  return 0;
-}
-
-int RGWMetadataHandler_GenericMetaBE::get(string& entry, RGWMetadataObject **obj, optional_yield y, const DoutPrefixProvider *dpp)
-{
-  return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
-    return do_get(op, entry, obj, y, dpp);
-  });
-}
-
-int RGWMetadataHandler_GenericMetaBE::put(string& entry, RGWMetadataObject *obj, RGWObjVersionTracker& objv_tracker,
-                                          optional_yield y, const DoutPrefixProvider *dpp, RGWMDLogSyncType type, bool from_remote_zone)
-{
-  return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
-    return do_put(op, entry, obj, objv_tracker, y, dpp, type, from_remote_zone);
-  });
-}
-
-int RGWMetadataHandler_GenericMetaBE::remove(string& entry, RGWObjVersionTracker& objv_tracker, optional_yield y, const DoutPrefixProvider *dpp)
-{
-  return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
-    return do_remove(op, entry, objv_tracker, y, dpp);
-  });
-}
-
-int RGWMetadataHandler_GenericMetaBE::mutate(const string& entry,
-                                             const ceph::real_time& mtime,
-                                             RGWObjVersionTracker *objv_tracker,
-                                             optional_yield y,
-                                             const DoutPrefixProvider *dpp,
-                                             RGWMDLogStatus op_type,
-                                             std::function<int()> f)
-{
-  return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
-    RGWSI_MetaBackend::MutateParams params(mtime, op_type);
-    return op->mutate(entry,
-                      params,
-                      objv_tracker,
-                     y,
-                      f,
-                      dpp);
-  });
-}
-
-int RGWMetadataHandler_GenericMetaBE::get_shard_id(const string& entry, int *shard_id)
-{
-  return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
-    return op->get_shard_id(entry, shard_id);
-  });
-}
-
-int RGWMetadataHandler_GenericMetaBE::list_keys_init(const DoutPrefixProvider *dpp, const string& marker, void **phandle)
-{
-  auto op = std::make_unique<RGWSI_MetaBackend_Handler::Op_ManagedCtx>(be_handler);
-
-  int ret = op->list_init(dpp, marker);
-  if (ret < 0) {
-    return ret;
-  }
-
-  *phandle = (void *)op.release();
-
-  return 0;
-}
-
-int RGWMetadataHandler_GenericMetaBE::list_keys_next(const DoutPrefixProvider *dpp, void *handle, int max, list<string>& keys, bool *truncated)
-{
-  auto op = static_cast<RGWSI_MetaBackend_Handler::Op_ManagedCtx *>(handle);
-
-  int ret = op->list_next(dpp, max, &keys, truncated);
-  if (ret < 0 && ret != -ENOENT) {
-    return ret;
-  }
-  if (ret == -ENOENT) {
-    if (truncated) {
-      *truncated = false;
-    }
-    return 0;
-  }
-
-  return 0;
-}
-
-void RGWMetadataHandler_GenericMetaBE::list_keys_complete(void *handle)
-{
-  auto op = static_cast<RGWSI_MetaBackend_Handler::Op_ManagedCtx *>(handle);
-  delete op;
-}
-
-string RGWMetadataHandler_GenericMetaBE::get_marker(void *handle)
-{
-  auto op = static_cast<RGWSI_MetaBackend_Handler::Op_ManagedCtx *>(handle);
-  string marker;
-  int r = op->list_get_marker(&marker);
-  if (r < 0) {
-    ldout(cct, 0) << "ERROR: " << __func__ << "(): list_get_marker() returned: r=" << r << dendl;
-    /* not much else to do */
-  }
-
-  return marker;
-}
-
-RGWMetadataHandlerPut_SObj::RGWMetadataHandlerPut_SObj(RGWMetadataHandler_GenericMetaBE *handler,
-                                                       RGWSI_MetaBackend_Handler::Op *op,
-                                                       string& entry, RGWMetadataObject *obj, RGWObjVersionTracker& objv_tracker,
-                                                      optional_yield y,
-                                                       RGWMDLogSyncType type, bool from_remote_zone) : Put(handler, op, entry, obj, objv_tracker, y, type, from_remote_zone) {
-}
-
-int RGWMetadataHandlerPut_SObj::put_pre(const DoutPrefixProvider *dpp)
-{
-  int ret = get(&old_obj, dpp);
-  if (ret < 0 && ret != -ENOENT) {
-    return ret;
-  }
-  exists = (ret != -ENOENT);
-
-  oo.reset(old_obj);
-
-  auto old_ver = (!old_obj ? obj_version() : old_obj->get_version());
-  auto old_mtime = (!old_obj ? ceph::real_time() : old_obj->get_mtime());
-
-  // are we actually going to perform this put, or is it too old?
-  if (!handler->check_versions(exists, old_ver, old_mtime,
-                               objv_tracker.write_version, obj->get_mtime(),
-                               apply_type)) {
-    return STATUS_NO_APPLY;
-  }
-
-  objv_tracker.read_version = old_ver; /* maintain the obj version we just read */
-
-  return 0;
-}
-
-int RGWMetadataHandlerPut_SObj::put(const DoutPrefixProvider *dpp)
-{
-  int ret = put_check(dpp);
-  if (ret != 0) {
-    return ret;
-  }
-
-  return put_checked(dpp);
-}
-
-int RGWMetadataHandlerPut_SObj::put_checked(const DoutPrefixProvider *dpp)
-{
-  RGWSI_MBSObj_PutParams params(obj->get_pattrs(), obj->get_mtime());
-
-  encode_obj(&params.bl);
-
-  int ret = op->put(entry, params, &objv_tracker, y, dpp);
-  if (ret < 0) {
-    return ret;
-  }
-
-  return 0;
-}
-
 class RGWMetadataTopHandler : public RGWMetadataHandler {
   struct iter_data {
     set<string> sections;
     set<string>::iterator iter;
   };
 
-  struct Svc {
-    RGWSI_Meta *meta{nullptr};
-  } svc;
-
   RGWMetadataManager *mgr;
 
 public:
-  RGWMetadataTopHandler(RGWSI_Meta *meta_svc,
-                        RGWMetadataManager *_mgr) : mgr(_mgr) {
-    base_init(meta_svc->ctx());
-    svc.meta = meta_svc;
-  }
+  explicit RGWMetadataTopHandler(RGWMetadataManager *_mgr) : mgr(_mgr) {}
 
   string get_type() override { return string(); }
 
@@ -389,8 +187,6 @@ public:
   }
 };
 
-RGWMetadataHandlerPut_SObj::~RGWMetadataHandlerPut_SObj() {}
-
 int RGWMetadataHandler::attach(RGWMetadataManager *manager)
 {
   return manager->register_handler(this);
@@ -403,10 +199,9 @@ obj_version& RGWMetadataObject::get_version()
   return objv;
 }
 
-RGWMetadataManager::RGWMetadataManager(RGWSI_Meta *_meta_svc)
-  : cct(_meta_svc->ctx()), meta_svc(_meta_svc)
+RGWMetadataManager::RGWMetadataManager()
 {
-  md_top_handler.reset(new RGWMetadataTopHandler(meta_svc, this));
+  md_top_handler.reset(new RGWMetadataTopHandler(this));
 }
 
 RGWMetadataManager::~RGWMetadataManager()
@@ -679,7 +474,6 @@ void RGWMetadataManager::dump_log_entry(cls_log_entry& entry, Formatter *f)
 
     encode_json("data", log_data, f);
   } catch (buffer::error& err) {
-    lderr(cct) << "failed to decode log entry: " << entry.section << ":" << entry.name<< " ts=" << entry.timestamp << dendl;
   }
   f->close_section();
 }
index f55064ff53ffc5c1a3672dd5db0a7fc1db6cbde7..063557c8e7e491c9be23726f4717a6d2184481f9 100644 (file)
@@ -29,7 +29,6 @@
 #include "rgw_user.h"
 
 #include "services/svc_sys_obj.h"
-#include "services/svc_meta.h"
 
 #include <atomic>
 
index 24c45afbe5771e973e1824168808be8287f96ebf..9a93a10f8c4babbc6222aee47e8532040df95fd7 100644 (file)
@@ -24,8 +24,6 @@
 
 #include "services/svc_zone.h"
 #include "services/svc_sys_obj.h"
-#include "services/svc_meta_be_sobj.h"
-#include "services/svc_meta.h"
 
 #define dout_subsys ceph_subsys_rgw
 
index beb767717c7fe9a55b3defc95b0056c98b315e20..ca705c5a44d02a5ec13e63d3c54c28923eb5cf04 100644 (file)
@@ -7,8 +7,6 @@
 #include "svc_sys_obj.h"
 #include "svc_sys_obj_cache.h"
 #include "svc_bi.h"
-#include "svc_meta.h"
-#include "svc_meta_be_sobj.h"
 #include "svc_mdlog.h"
 #include "svc_sync_modules.h"
 
@@ -72,7 +70,7 @@ RGWSI_Bucket_SObj::~RGWSI_Bucket_SObj() {
 
 void RGWSI_Bucket_SObj::init(RGWSI_Zone *_zone_svc, RGWSI_SysObj *_sysobj_svc,
                              RGWSI_SysObj_Cache *_cache_svc, RGWSI_BucketIndex *_bi,
-                             RGWSI_Meta *_meta_svc, RGWSI_MDLog* mdlog_svc,
+                             RGWSI_MDLog* mdlog_svc,
                              RGWSI_SyncModules *_sync_modules_svc,
                              RGWSI_Bucket_Sync *_bucket_sync_svc)
 {
@@ -81,7 +79,6 @@ void RGWSI_Bucket_SObj::init(RGWSI_Zone *_zone_svc, RGWSI_SysObj *_sysobj_svc,
   svc.sysobj = _sysobj_svc;
   svc.cache = _cache_svc;
   svc.bi = _bi;
-  svc.meta = _meta_svc;
   svc.mdlog = mdlog_svc;
   svc.sync_modules = _sync_modules_svc;
   svc.bucket_sync = _bucket_sync_svc;
index 6028222ed25eb3fb2dad0a5c2a56163b6ab7afb5..f245417d1686c1db35d862ee97473af6e1ff4b24 100644 (file)
@@ -25,7 +25,6 @@
 class RGWSI_Zone;
 class RGWSI_SysObj;
 class RGWSI_SysObj_Cache;
-class RGWSI_Meta;
 class RGWSI_MDLog;
 class RGWSI_SyncModules;
 
@@ -68,7 +67,6 @@ public:
     RGWSI_Zone *zone{nullptr};
     RGWSI_SysObj *sysobj{nullptr};
     RGWSI_SysObj_Cache *cache{nullptr};
-    RGWSI_Meta *meta{nullptr};
     RGWSI_MDLog *mdlog{nullptr};
     RGWSI_SyncModules *sync_modules{nullptr};
     RGWSI_Bucket_Sync *bucket_sync{nullptr};
@@ -81,7 +79,6 @@ public:
             RGWSI_SysObj *_sysobj_svc,
            RGWSI_SysObj_Cache *_cache_svc,
             RGWSI_BucketIndex *_bi,
-            RGWSI_Meta *_meta_svc,
             RGWSI_MDLog *mdlog_svc,
            RGWSI_SyncModules *_sync_modules_svc,
            RGWSI_Bucket_Sync *_bucket_sync_svc);
index bf7f3e527390cf0432c5944615d9fcd9bc179454..e4ebccbaad27ec9dea52ce6ac6d8966c05640c91 100644 (file)
@@ -19,7 +19,6 @@
 
 #include "rgw_service.h"
 
-#include "svc_meta_be.h"
 #include "svc_bucket_sync.h"
 
 class RGWSI_Zone;
index c8d40b1387428ca435466145265ae71bae74c929..c627b46af1d44683b8793378415153e0e8cda631 100644 (file)
@@ -20,8 +20,6 @@
 #include "rgw_period_history.h"
 #include "rgw_period_puller.h"
 
-#include "svc_meta_be.h"
-
 
 class RGWMetadataLog;
 class RGWMetadataLogHistory;
diff --git a/src/rgw/services/svc_meta.cc b/src/rgw/services/svc_meta.cc
deleted file mode 100644 (file)
index 735c39f..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-
-#include "svc_meta.h"
-
-#include "rgw_metadata.h"
-
-#define dout_subsys ceph_subsys_rgw
-
-using namespace std;
-
-RGWSI_Meta::RGWSI_Meta(CephContext *cct) : RGWServiceInstance(cct) {
-}
-
-RGWSI_Meta::~RGWSI_Meta() {}
-
-void RGWSI_Meta::init(RGWSI_SysObj *_sysobj_svc,
-                      RGWSI_MDLog *_mdlog_svc,
-                      vector<RGWSI_MetaBackend *>& _be_svc)
-{
-  sysobj_svc = _sysobj_svc;
-  mdlog_svc = _mdlog_svc;
-
-  for (auto& be : _be_svc) {
-    be_svc[be->get_type()] = be;
-  }
-}
-
-int RGWSI_Meta::create_be_handler(RGWSI_MetaBackend::Type be_type,
-                                  RGWSI_MetaBackend_Handler **phandler)
-{
-  auto iter = be_svc.find(be_type);
-  if (iter == be_svc.end()) {
-    ldout(cct, 0) << __func__ << "(): ERROR: backend type not found" << dendl;
-    return -EINVAL;
-  }
-
-  auto handler = iter->second->alloc_be_handler();
-
-  be_handlers.emplace_back(handler);
-  *phandler = handler;
-
-  return 0;
-}
-
diff --git a/src/rgw/services/svc_meta.h b/src/rgw/services/svc_meta.h
deleted file mode 100644 (file)
index b398e27..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-/*
- * Ceph - scalable distributed file system
- *
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software
- * Foundation. See file COPYING.
- *
- */
-
-
-#pragma once
-
-#include "svc_meta_be.h"
-
-#include "rgw_service.h"
-
-
-class RGWMetadataLog;
-class RGWCoroutine;
-
-
-class RGWSI_Meta : public RGWServiceInstance
-{
-  RGWSI_SysObj *sysobj_svc{nullptr};
-  RGWSI_MDLog *mdlog_svc{nullptr};
-
-  std::map<RGWSI_MetaBackend::Type, RGWSI_MetaBackend *> be_svc;
-
-  std::vector<std::unique_ptr<RGWSI_MetaBackend_Handler> > be_handlers;
-
-public:
-  RGWSI_Meta(CephContext *cct);
-  ~RGWSI_Meta();
-
-  void init(RGWSI_SysObj *_sysobj_svc,
-            RGWSI_MDLog *_mdlog_svc,
-            std::vector<RGWSI_MetaBackend *>& _be_svc);
-
-  int create_be_handler(RGWSI_MetaBackend::Type be_type,
-                        RGWSI_MetaBackend_Handler **phandler);
-};
-
diff --git a/src/rgw/services/svc_meta_be.cc b/src/rgw/services/svc_meta_be.cc
deleted file mode 100644 (file)
index 2cb0365..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-
-#include "svc_meta_be.h"
-
-#include "rgw_mdlog.h"
-
-#define dout_subsys ceph_subsys_rgw
-
-using namespace std;
-
-RGWSI_MetaBackend::Context::~Context() {} // needed, even though destructor is pure virtual
-RGWSI_MetaBackend::Module::~Module() {} // ditto
-RGWSI_MetaBackend::PutParams::~PutParams() {} // ...
-RGWSI_MetaBackend::GetParams::~GetParams() {} // ...
-RGWSI_MetaBackend::RemoveParams::~RemoveParams() {} // ...
-
-int RGWSI_MetaBackend::pre_modify(const DoutPrefixProvider *dpp, 
-                                  RGWSI_MetaBackend::Context *ctx,
-                                  const string& key,
-                                  RGWMetadataLogData& log_data,
-                                  RGWObjVersionTracker *objv_tracker,
-                                  RGWMDLogStatus op_type,
-                                  optional_yield y)
-{
-  /* if write version has not been set, and there's a read version, set it so that we can
-   * log it
-   */
-  if (objv_tracker &&
-      objv_tracker->read_version.ver && !objv_tracker->write_version.ver) {
-    objv_tracker->write_version = objv_tracker->read_version;
-    objv_tracker->write_version.ver++;
-  }
-
-  return 0;
-}
-
-int RGWSI_MetaBackend::post_modify(const DoutPrefixProvider *dpp, 
-                                   RGWSI_MetaBackend::Context *ctx,
-                                   const string& key,
-                                   RGWMetadataLogData& log_data,
-                                   RGWObjVersionTracker *objv_tracker, int ret,
-                                   optional_yield y)
-{
-  return ret;
-}
-
-int RGWSI_MetaBackend::prepare_mutate(RGWSI_MetaBackend::Context *ctx,
-                                      const string& key,
-                                      const real_time& mtime,
-                                      RGWObjVersionTracker *objv_tracker,
-                                      optional_yield y,
-                                      const DoutPrefixProvider *dpp)
-{
-  real_time orig_mtime;
-
-  int ret = call_with_get_params(&orig_mtime, [&](GetParams& params) {
-    return get_entry(ctx, key, params, objv_tracker, y, dpp);
-  });
-  if (ret < 0 && ret != -ENOENT) {
-    return ret;
-  }
-
-  if (objv_tracker->write_version.tag.empty()) {
-    if (objv_tracker->read_version.tag.empty()) {
-      objv_tracker->generate_new_write_ver(cct);
-    } else {
-      objv_tracker->write_version = objv_tracker->read_version;
-      objv_tracker->write_version.ver++;
-    }
-  }
-  return 0;
-}
-
-int RGWSI_MetaBackend::do_mutate(RGWSI_MetaBackend::Context *ctx,
-                                const string& key,
-                                const ceph::real_time& mtime,
-                                RGWObjVersionTracker *objv_tracker,
-                                RGWMDLogStatus op_type,
-                                 optional_yield y,
-                                std::function<int()> f,
-                                bool generic_prepare,
-                                 const DoutPrefixProvider *dpp)
-{
-  int ret;
-
-  if (generic_prepare) {
-    ret = prepare_mutate(ctx, key, mtime, objv_tracker, y, dpp);
-    if (ret < 0 ||
-       ret == STATUS_NO_APPLY) {
-      return ret;
-    }
-  }
-
-  RGWMetadataLogData log_data;
-  ret = pre_modify(dpp, ctx, key, log_data, objv_tracker, op_type, y);
-  if (ret < 0) {
-    return ret;
-  }
-
-  ret = f();
-
-  /* cascading ret into post_modify() */
-
-  ret = post_modify(dpp, ctx, key, log_data, objv_tracker, ret, y);
-  if (ret < 0)
-    return ret;
-
-  return 0;
-}
-
-int RGWSI_MetaBackend::get(Context *ctx,
-                          const string& key,
-                          GetParams& params,
-                          RGWObjVersionTracker *objv_tracker,
-                           optional_yield y,
-                           const DoutPrefixProvider *dpp,
-                           bool get_raw_attrs)
-{
-  return get_entry(ctx, key, params, objv_tracker, y, dpp, get_raw_attrs);
-}
-
-int RGWSI_MetaBackend::put(Context *ctx,
-                          const string& key,
-                          PutParams& params,
-                          RGWObjVersionTracker *objv_tracker,
-                           optional_yield y,
-                           const DoutPrefixProvider *dpp)
-{
-  std::function<int()> f = [&]() {
-    return put_entry(dpp, ctx, key, params, objv_tracker, y);
-  };
-
-  return do_mutate(ctx, key, params.mtime, objv_tracker,
-                MDLOG_STATUS_WRITE,
-                y,
-                f,
-                false,
-                dpp);
-}
-
-int RGWSI_MetaBackend::remove(Context *ctx,
-                              const string& key,
-                              RemoveParams& params,
-                              RGWObjVersionTracker *objv_tracker,
-                              optional_yield y,
-                              const DoutPrefixProvider *dpp)
-{
-  std::function<int()> f = [&]() {
-    return remove_entry(dpp, ctx, key, params, objv_tracker, y);
-  };
-
-  return do_mutate(ctx, key, params.mtime, objv_tracker,
-                MDLOG_STATUS_REMOVE,
-                y,
-                f,
-                false,
-                dpp);
-}
-
-int RGWSI_MetaBackend::mutate(Context *ctx,
-                             const std::string& key,
-                             MutateParams& params,
-                             RGWObjVersionTracker *objv_tracker,
-                              optional_yield y,
-                             std::function<int()> f,
-                              const DoutPrefixProvider *dpp)
-{
-  return do_mutate(ctx, key, params.mtime, objv_tracker,
-                  params.op_type, y,
-                  f,
-                  false,
-                   dpp);
-}
-
-int RGWSI_MetaBackend_Handler::call(std::optional<RGWSI_MetaBackend_CtxParams> bectx_params,
-                                    std::function<int(Op *)> f)
-{
-  return be->call(bectx_params, [&](RGWSI_MetaBackend::Context *ctx) {
-    ctx->init(this);
-    Op op(be, ctx);
-    return f(&op);
-  });
-}
-
-RGWSI_MetaBackend_Handler::Op_ManagedCtx::Op_ManagedCtx(RGWSI_MetaBackend_Handler *handler) : Op(handler->be, handler->be->alloc_ctx())
-{
-  auto c = ctx();
-  c->init(handler);
-  pctx.reset(c);
-}
-
diff --git a/src/rgw/services/svc_meta_be.h b/src/rgw/services/svc_meta_be.h
deleted file mode 100644 (file)
index 38de721..0000000
+++ /dev/null
@@ -1,294 +0,0 @@
-
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-/*
- * Ceph - scalable distributed file system
- *
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software
- * Foundation. See file COPYING.
- *
- */
-
-
-#pragma once
-
-#include "svc_meta_be_params.h"
-
-#include "rgw_mdlog_types.h"
-
-#include "driver/rados/rgw_service.h" // FIXME: subclass dependency
-
-class RGWMetadataLogData;
-
-class RGWSI_MDLog;
-class RGWSI_Meta;
-class RGWObjVersionTracker;
-class RGWSI_MetaBackend_Handler;
-
-class RGWSI_MetaBackend : public RGWServiceInstance
-{
-  friend class RGWSI_Meta;
-public:
-  class Module;
-  class Context;
-protected:
-  RGWSI_MDLog *mdlog_svc{nullptr};
-
-  void base_init(RGWSI_MDLog *_mdlog_svc) {
-    mdlog_svc = _mdlog_svc;
-  }
-
-  int prepare_mutate(RGWSI_MetaBackend::Context *ctx,
-                     const std::string& key,
-                     const ceph::real_time& mtime,
-                     RGWObjVersionTracker *objv_tracker,
-                     optional_yield y,
-                     const DoutPrefixProvider *dpp);
-
-  virtual int do_mutate(Context *ctx,
-                     const std::string& key,
-                     const ceph::real_time& mtime, RGWObjVersionTracker *objv_tracker,
-                     RGWMDLogStatus op_type,
-                     optional_yield y,
-                     std::function<int()> f,
-                     bool generic_prepare,
-                     const DoutPrefixProvider *dpp);
-
-  virtual int pre_modify(const DoutPrefixProvider *dpp, 
-                         Context *ctx,
-                         const std::string& key,
-                         RGWMetadataLogData& log_data,
-                         RGWObjVersionTracker *objv_tracker,
-                         RGWMDLogStatus op_type,
-                         optional_yield y);
-  virtual int post_modify(const DoutPrefixProvider *dpp, 
-                          Context *ctx,
-                          const std::string& key,
-                          RGWMetadataLogData& log_data,
-                          RGWObjVersionTracker *objv_tracker, int ret,
-                          optional_yield y);
-public:
-  class Module {
-    /*
-     * Backend specialization module
-     */
-  public:
-    virtual ~Module() = 0;
-  };
-
-  using ModuleRef = std::shared_ptr<Module>;
-
-  struct Context { /*
-                    * A single metadata operation context. Will be holding info about
-                    * backend and operation itself; operation might span multiple backend
-                    * calls.
-                    */
-    virtual ~Context() = 0;
-
-    virtual void init(RGWSI_MetaBackend_Handler *h) = 0;
-  };
-
-  virtual Context *alloc_ctx() = 0;
-
-  struct PutParams {
-    ceph::real_time mtime;
-
-    PutParams() {}
-    PutParams(const ceph::real_time& _mtime) : mtime(_mtime) {}
-    virtual ~PutParams() = 0;
-  };
-
-  struct GetParams {
-    GetParams() {}
-    GetParams(ceph::real_time *_pmtime) : pmtime(_pmtime) {}
-    virtual ~GetParams();
-
-    ceph::real_time *pmtime{nullptr};
-  };
-
-  struct RemoveParams {
-    virtual ~RemoveParams() = 0;
-
-    ceph::real_time mtime;
-  };
-
-  struct MutateParams {
-    ceph::real_time mtime;
-    RGWMDLogStatus op_type;
-
-    MutateParams() {}
-    MutateParams(const ceph::real_time& _mtime,
-                RGWMDLogStatus _op_type) : mtime(_mtime), op_type(_op_type) {}
-    virtual ~MutateParams() {}
-  };
-
-  enum Type {
-    MDBE_SOBJ = 0,
-  };
-
-  RGWSI_MetaBackend(CephContext *cct) : RGWServiceInstance(cct) {}
-  virtual ~RGWSI_MetaBackend() {}
-
-  virtual Type get_type() = 0;
-
-  virtual RGWSI_MetaBackend_Handler *alloc_be_handler() = 0;
-  virtual int call_with_get_params(ceph::real_time *pmtime, std::function<int(RGWSI_MetaBackend::GetParams&)>) = 0;
-
-  /* these should be implemented by backends */
-  virtual int get_entry(RGWSI_MetaBackend::Context *ctx,
-                        const std::string& key,
-                        RGWSI_MetaBackend::GetParams& params,
-                        RGWObjVersionTracker *objv_tracker,
-                        optional_yield y,
-                        const DoutPrefixProvider *dpp,
-                        bool get_raw_attrs=false) = 0;
-  virtual int put_entry(const DoutPrefixProvider *dpp, 
-                        RGWSI_MetaBackend::Context *ctx,
-                        const std::string& key,
-                        RGWSI_MetaBackend::PutParams& params,
-                        RGWObjVersionTracker *objv_tracker,
-                        optional_yield y) = 0;
-  virtual int remove_entry(const DoutPrefixProvider *dpp, 
-                           Context *ctx,
-                           const std::string& key,
-                           RGWSI_MetaBackend::RemoveParams& params,
-                           RGWObjVersionTracker *objv_tracker,
-                           optional_yield y) = 0;
-
-  virtual int list_init(const DoutPrefixProvider *dpp, RGWSI_MetaBackend::Context *ctx, const std::string& marker) = 0;
-  virtual int list_next(const DoutPrefixProvider *dpp,
-                        RGWSI_MetaBackend::Context *ctx,
-                        int max, std::list<std::string> *keys,
-                        bool *truncated)  = 0;
-  virtual int list_get_marker(RGWSI_MetaBackend::Context *ctx,
-                              std::string *marker) = 0;
-
-  int call(std::function<int(RGWSI_MetaBackend::Context *)> f) {
-    return call(std::nullopt, f);
-  }
-
-  virtual int call(std::optional<RGWSI_MetaBackend_CtxParams> opt,
-                   std::function<int(RGWSI_MetaBackend::Context *)> f) = 0;
-
-  virtual int get_shard_id(RGWSI_MetaBackend::Context *ctx,
-                          const std::string& key,
-                          int *shard_id) = 0;
-
-  /* higher level */
-  virtual int get(Context *ctx,
-                  const std::string& key,
-                  GetParams &params,
-                  RGWObjVersionTracker *objv_tracker,
-                  optional_yield y,
-                  const DoutPrefixProvider *dpp,
-                  bool get_raw_attrs=false);
-
-  virtual int put(Context *ctx,
-                  const std::string& key,
-                  PutParams& params,
-                  RGWObjVersionTracker *objv_tracker,
-                  optional_yield y,
-                  const DoutPrefixProvider *dpp);
-
-  virtual int remove(Context *ctx,
-                     const std::string& key,
-                     RemoveParams& params,
-                     RGWObjVersionTracker *objv_tracker,
-                     optional_yield y,
-                     const DoutPrefixProvider *dpp);
-
-  virtual int mutate(Context *ctx,
-                     const std::string& key,
-                     MutateParams& params,
-                    RGWObjVersionTracker *objv_tracker,
-                     optional_yield y,
-                     std::function<int()> f,
-                     const DoutPrefixProvider *dpp);
-};
-
-class RGWSI_MetaBackend_Handler {
-  RGWSI_MetaBackend *be{nullptr};
-
-public:
-  class Op {
-    friend class RGWSI_MetaBackend_Handler;
-
-    RGWSI_MetaBackend *be;
-    RGWSI_MetaBackend::Context *be_ctx;
-
-    Op(RGWSI_MetaBackend *_be,
-       RGWSI_MetaBackend::Context *_ctx) : be(_be), be_ctx(_ctx) {}
-
-  public:
-    RGWSI_MetaBackend::Context *ctx() {
-      return be_ctx;
-    }
-
-    int get(const std::string& key,
-            RGWSI_MetaBackend::GetParams &params,
-            RGWObjVersionTracker *objv_tracker,
-            optional_yield y, const DoutPrefixProvider *dpp) {
-      return be->get(be_ctx, key, params, objv_tracker, y, dpp);
-    }
-
-    int put(const std::string& key,
-            RGWSI_MetaBackend::PutParams& params,
-            RGWObjVersionTracker *objv_tracker,
-            optional_yield y, const DoutPrefixProvider *dpp) {
-      return be->put(be_ctx, key, params, objv_tracker, y, dpp);
-    }
-
-    int remove(const std::string& key,
-               RGWSI_MetaBackend::RemoveParams& params,
-               RGWObjVersionTracker *objv_tracker,
-               optional_yield y, const DoutPrefixProvider *dpp) {
-      return be->remove(be_ctx, key, params, objv_tracker, y, dpp);
-    }
-
-    int mutate(const std::string& key,
-              RGWSI_MetaBackend::MutateParams& params,
-              RGWObjVersionTracker *objv_tracker,
-               optional_yield y,
-              std::function<int()> f,
-               const DoutPrefixProvider *dpp) {
-      return be->mutate(be_ctx, key, params, objv_tracker, y, f, dpp);
-    }
-
-    int list_init(const DoutPrefixProvider *dpp, const std::string& marker) {
-      return be->list_init(dpp, be_ctx, marker);
-    }
-    int list_next(const DoutPrefixProvider *dpp, int max, std::list<std::string> *keys,
-                  bool *truncated) {
-      return be->list_next(dpp, be_ctx, max, keys, truncated);
-    }
-    int list_get_marker(std::string *marker) {
-      return be->list_get_marker(be_ctx, marker);
-    }
-
-    int get_shard_id(const std::string& key, int *shard_id) {
-      return be->get_shard_id(be_ctx, key, shard_id);
-    }
-  };
-
-  class Op_ManagedCtx : public Op {
-    std::unique_ptr<RGWSI_MetaBackend::Context> pctx;
-  public:
-    Op_ManagedCtx(RGWSI_MetaBackend_Handler *handler);
-  };
-
-  RGWSI_MetaBackend_Handler(RGWSI_MetaBackend *_be) : be(_be) {}
-  virtual ~RGWSI_MetaBackend_Handler() {}
-
-  int call(std::function<int(Op *)> f) {
-    return call(std::nullopt, f);
-  }
-
-  virtual int call(std::optional<RGWSI_MetaBackend_CtxParams> bectx_params,
-                   std::function<int(Op *)> f);
-};
-
diff --git a/src/rgw/services/svc_meta_be_params.h b/src/rgw/services/svc_meta_be_params.h
deleted file mode 100644 (file)
index 445f6e1..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-/*
- * Ceph - scalable distributed file system
- *
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software
- * Foundation. See file COPYING.
- *
- */
-
-
-#pragma once
-
-#include <variant>
-
-struct RGWSI_MetaBackend_CtxParams_SObj {};
-
-using RGWSI_MetaBackend_CtxParams = std::variant<RGWSI_MetaBackend_CtxParams_SObj>;
diff --git a/src/rgw/services/svc_meta_be_sobj.cc b/src/rgw/services/svc_meta_be_sobj.cc
deleted file mode 100644 (file)
index 45410c1..0000000
+++ /dev/null
@@ -1,246 +0,0 @@
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-#include "svc_meta_be_sobj.h"
-#include "svc_meta_be_params.h"
-#include "svc_mdlog.h"
-
-#include "rgw_tools.h"
-#include "rgw_metadata.h"
-#include "rgw_mdlog.h"
-
-#define dout_subsys ceph_subsys_rgw
-
-using namespace std;
-
-RGWSI_MetaBackend_SObj::RGWSI_MetaBackend_SObj(CephContext *cct) : RGWSI_MetaBackend(cct) {
-}
-
-RGWSI_MetaBackend_SObj::~RGWSI_MetaBackend_SObj() {
-}
-
-RGWSI_MetaBackend_Handler *RGWSI_MetaBackend_SObj::alloc_be_handler()
-{
-  return new RGWSI_MetaBackend_Handler_SObj(this);
-}
-
-RGWSI_MetaBackend::Context *RGWSI_MetaBackend_SObj::alloc_ctx()
-{
-  return new Context_SObj;
-}
-
-int RGWSI_MetaBackend_SObj::pre_modify(const DoutPrefixProvider *dpp, RGWSI_MetaBackend::Context *_ctx,
-                                       const string& key,
-                                       RGWMetadataLogData& log_data,
-                                       RGWObjVersionTracker *objv_tracker,
-                                       RGWMDLogStatus op_type,
-                                       optional_yield y)
-{
-  auto ctx = static_cast<Context_SObj *>(_ctx);
-  int ret = RGWSI_MetaBackend::pre_modify(dpp, ctx, key, log_data,
-                                          objv_tracker, op_type,
-                                          y);
-  if (ret < 0) {
-    return ret;
-  }
-
-  /* if write version has not been set, and there's a read version, set it so that we can
-   * log it
-   */
-  if (objv_tracker) {
-    log_data.read_version = objv_tracker->read_version;
-    log_data.write_version = objv_tracker->write_version;
-  }
-
-  log_data.status = op_type;
-
-  bufferlist logbl;
-  encode(log_data, logbl);
-
-  ret = mdlog_svc->add_entry(dpp, ctx->module->get_hash_key(key), ctx->module->get_section(), key, logbl, y);
-  if (ret < 0)
-    return ret;
-
-  return 0;
-}
-
-int RGWSI_MetaBackend_SObj::post_modify(const DoutPrefixProvider *dpp, 
-                                        RGWSI_MetaBackend::Context *_ctx,
-                                        const string& key,
-                                        RGWMetadataLogData& log_data,
-                                        RGWObjVersionTracker *objv_tracker, int ret,
-                                        optional_yield y)
-{
-  auto ctx = static_cast<Context_SObj *>(_ctx);
-  if (ret >= 0)
-    log_data.status = MDLOG_STATUS_COMPLETE;
-  else 
-    log_data.status = MDLOG_STATUS_ABORT;
-
-  bufferlist logbl;
-  encode(log_data, logbl);
-
-  int r = mdlog_svc->add_entry(dpp, ctx->module->get_hash_key(key), ctx->module->get_section(), key, logbl, y);
-  if (ret < 0)
-    return ret;
-
-  if (r < 0)
-    return r;
-
-  return RGWSI_MetaBackend::post_modify(dpp, ctx, key, log_data, objv_tracker, ret, y);
-}
-
-int RGWSI_MetaBackend_SObj::get_shard_id(RGWSI_MetaBackend::Context *_ctx,
-                                        const std::string& key,
-                                        int *shard_id)
-{
-  auto ctx = static_cast<Context_SObj *>(_ctx);
-  *shard_id = mdlog_svc->get_shard_id(ctx->module->get_hash_key(key), shard_id);
-  return 0;
-}
-
-int RGWSI_MetaBackend_SObj::call(std::optional<RGWSI_MetaBackend_CtxParams> opt,
-                                 std::function<int(RGWSI_MetaBackend::Context *)> f)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj ctx;
-  return f(&ctx);
-}
-
-void RGWSI_MetaBackend_SObj::Context_SObj::init(RGWSI_MetaBackend_Handler *h)
-{
-  RGWSI_MetaBackend_Handler_SObj *handler = static_cast<RGWSI_MetaBackend_Handler_SObj *>(h);
-  module = handler->module;
-}
-
-int RGWSI_MetaBackend_SObj::call_with_get_params(ceph::real_time *pmtime, std::function<int(RGWSI_MetaBackend::GetParams&)> cb)
-{
-  bufferlist bl;
-  RGWSI_MBSObj_GetParams params;
-  params.pmtime = pmtime;
-  params.pbl = &bl;
-  return cb(params);
-}
-
-int RGWSI_MetaBackend_SObj::get_entry(RGWSI_MetaBackend::Context *_ctx,
-                                      const string& key,
-                                      GetParams& _params,
-                                      RGWObjVersionTracker *objv_tracker,
-                                      optional_yield y,
-                                      const DoutPrefixProvider *dpp,
-                                      bool get_raw_attrs)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj *ctx = static_cast<RGWSI_MetaBackend_SObj::Context_SObj *>(_ctx);
-  RGWSI_MBSObj_GetParams& params = static_cast<RGWSI_MBSObj_GetParams&>(_params);
-
-  rgw_pool pool;
-  string oid;
-  ctx->module->get_pool_and_oid(key, &pool, &oid);
-
-  int ret = 0;
-  ret = rgw_get_system_obj(sysobj_svc, pool, oid, *params.pbl,
-                            objv_tracker, params.pmtime,
-                            y, dpp,
-                            params.pattrs, params.cache_info,
-                            params.refresh_version, get_raw_attrs);
-
-  return ret;
-}
-
-int RGWSI_MetaBackend_SObj::put_entry(const DoutPrefixProvider *dpp, 
-                                      RGWSI_MetaBackend::Context *_ctx,
-                                      const string& key,
-                                      PutParams& _params,
-                                      RGWObjVersionTracker *objv_tracker,
-                                      optional_yield y)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj *ctx = static_cast<RGWSI_MetaBackend_SObj::Context_SObj *>(_ctx);
-  RGWSI_MBSObj_PutParams& params = static_cast<RGWSI_MBSObj_PutParams&>(_params);
-
-  rgw_pool pool;
-  string oid;
-  ctx->module->get_pool_and_oid(key, &pool, &oid);
-
-  return rgw_put_system_obj(dpp, sysobj_svc, pool, oid, params.bl, params.exclusive,
-                            objv_tracker, params.mtime, y, params.pattrs);
-}
-
-int RGWSI_MetaBackend_SObj::remove_entry(const DoutPrefixProvider *dpp, 
-                                         RGWSI_MetaBackend::Context *_ctx,
-                                         const string& key,
-                                         RemoveParams& params,
-                                         RGWObjVersionTracker *objv_tracker,
-                                         optional_yield y)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj *ctx = static_cast<RGWSI_MetaBackend_SObj::Context_SObj *>(_ctx);
-
-  rgw_pool pool;
-  string oid;
-  ctx->module->get_pool_and_oid(key, &pool, &oid);
-  rgw_raw_obj k(pool, oid);
-
-  auto sysobj = sysobj_svc->get_obj(k);
-  return sysobj.wop()
-               .set_objv_tracker(objv_tracker)
-               .remove(dpp, y);
-}
-
-int RGWSI_MetaBackend_SObj::list_init(const DoutPrefixProvider *dpp,
-                                      RGWSI_MetaBackend::Context *_ctx,
-                                      const string& marker)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj *ctx = static_cast<RGWSI_MetaBackend_SObj::Context_SObj *>(_ctx);
-
-  rgw_pool pool;
-
-  string no_key;
-  ctx->module->get_pool_and_oid(no_key, &pool, nullptr);
-
-  ctx->list.pool = sysobj_svc->get_pool(pool);
-  ctx->list.op.emplace(ctx->list.pool->op());
-
-  string prefix = ctx->module->get_oid_prefix();
-  ctx->list.op->init(dpp, marker, prefix);
-
-  return 0;
-}
-
-int RGWSI_MetaBackend_SObj::list_next(const DoutPrefixProvider *dpp,
-                                      RGWSI_MetaBackend::Context *_ctx,
-                                      int max, list<string> *keys,
-                                      bool *truncated)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj *ctx = static_cast<RGWSI_MetaBackend_SObj::Context_SObj *>(_ctx);
-
-  vector<string> oids;
-
-  keys->clear();
-
-  int ret = ctx->list.op->get_next(dpp, max, &oids, truncated);
-  if (ret < 0 && ret != -ENOENT)
-    return ret;
-  if (ret == -ENOENT) {
-    if (truncated)
-      *truncated = false;
-    return 0;
-  }
-
-  auto module = ctx->module;
-
-  for (auto& o : oids) {
-    if (!module->is_valid_oid(o)) {
-      continue;
-    }
-    keys->emplace_back(module->oid_to_key(o));
-  }
-
-  return 0;
-}
-
-int RGWSI_MetaBackend_SObj::list_get_marker(RGWSI_MetaBackend::Context *_ctx,
-                                            string *marker)
-{
-  RGWSI_MetaBackend_SObj::Context_SObj *ctx = static_cast<RGWSI_MetaBackend_SObj::Context_SObj *>(_ctx);
-
-  return ctx->list.op->get_marker(marker);
-}
-
diff --git a/src/rgw/services/svc_meta_be_sobj.h b/src/rgw/services/svc_meta_be_sobj.h
deleted file mode 100644 (file)
index bf1ad1e..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-
-
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-/*
- * Ceph - scalable distributed file system
- *
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software
- * Foundation. See file COPYING.
- *
- */
-
-
-#pragma once
-
-#include "rgw_service.h"
-
-#include "svc_meta_be.h"
-#include "svc_sys_obj.h"
-
-
-class RGWSI_MBSObj_Handler_Module : public RGWSI_MetaBackend::Module {
-protected:
-  std::string section;
-public:
-  RGWSI_MBSObj_Handler_Module(const std::string& _section) : section(_section) {}
-  virtual void get_pool_and_oid(const std::string& key, rgw_pool *pool, std::string *oid) = 0;
-  virtual const std::string& get_oid_prefix() = 0;
-  virtual std::string key_to_oid(const std::string& key) = 0;
-  virtual bool is_valid_oid(const std::string& oid) = 0;
-  virtual std::string oid_to_key(const std::string& oid) = 0;
-
-  const std::string& get_section() {
-    return section;
-  }
-
-  /* key to use for hashing entries for log shard placement */
-  virtual std::string get_hash_key(const std::string& key) {
-    return section + ":" + key;
-  }
-};
-
-struct RGWSI_MBSObj_GetParams : public RGWSI_MetaBackend::GetParams {
-  bufferlist *pbl{nullptr};
-  std::map<std::string, bufferlist> *pattrs{nullptr};
-  rgw_cache_entry_info *cache_info{nullptr};
-  boost::optional<obj_version> refresh_version;
-
-  RGWSI_MBSObj_GetParams() {}
-  RGWSI_MBSObj_GetParams(bufferlist *_pbl,
-                         std::map<std::string, bufferlist> *_pattrs,
-                         ceph::real_time *_pmtime) : RGWSI_MetaBackend::GetParams(_pmtime),
-                                                     pbl(_pbl),
-                                                     pattrs(_pattrs) {}
-
-  RGWSI_MBSObj_GetParams& set_cache_info(rgw_cache_entry_info *_cache_info) {
-    cache_info = _cache_info;
-    return *this;
-  }
-  RGWSI_MBSObj_GetParams& set_refresh_version(boost::optional<obj_version>& _refresh_version) {
-    refresh_version = _refresh_version;
-    return *this;
-  }
-};
-
-struct RGWSI_MBSObj_PutParams : public RGWSI_MetaBackend::PutParams {
-  bufferlist bl;
-  const std::map<std::string, bufferlist> *pattrs{nullptr};
-  bool exclusive{false};
-
-  RGWSI_MBSObj_PutParams() {}
-  RGWSI_MBSObj_PutParams(const std::map<std::string, bufferlist> *_pattrs,
-                         const ceph::real_time& _mtime) : RGWSI_MetaBackend::PutParams(_mtime),
-                                                          pattrs(_pattrs) {}
-  RGWSI_MBSObj_PutParams(bufferlist& _bl,
-                         const std::map<std::string, bufferlist> *_pattrs,
-                         const ceph::real_time& _mtime,
-                         bool _exclusive) : RGWSI_MetaBackend::PutParams(_mtime),
-                                            bl(_bl),
-                                            pattrs(_pattrs),
-                                            exclusive(_exclusive) {}
-};
-
-struct RGWSI_MBSObj_RemoveParams : public RGWSI_MetaBackend::RemoveParams {
-};
-
-class RGWSI_MetaBackend_SObj : public RGWSI_MetaBackend
-{
-protected:
-  RGWSI_SysObj *sysobj_svc{nullptr};
-
-public:
-  struct Context_SObj : public RGWSI_MetaBackend::Context {
-    RGWSI_MBSObj_Handler_Module *module{nullptr};
-    struct _list {
-      std::optional<RGWSI_SysObj::Pool> pool;
-      std::optional<RGWSI_SysObj::Pool::Op> op;
-    } list;
-
-    void init(RGWSI_MetaBackend_Handler *h) override;
-  };
-
-  RGWSI_MetaBackend_SObj(CephContext *cct);
-  virtual ~RGWSI_MetaBackend_SObj();
-
-  RGWSI_MetaBackend::Type get_type() {
-    return MDBE_SOBJ;
-  }
-
-  void init(RGWSI_SysObj *_sysobj_svc,
-            RGWSI_MDLog *_mdlog_svc) {
-    base_init(_mdlog_svc);
-    sysobj_svc = _sysobj_svc;
-  }
-
-  RGWSI_MetaBackend_Handler *alloc_be_handler() override;
-  RGWSI_MetaBackend::Context *alloc_ctx() override;
-
-
-  int call_with_get_params(ceph::real_time *pmtime, std::function<int(RGWSI_MetaBackend::GetParams&)> cb) override;
-
-  int pre_modify(const DoutPrefixProvider *dpp, 
-                 RGWSI_MetaBackend::Context *ctx,
-                 const std::string& key,
-                 RGWMetadataLogData& log_data,
-                 RGWObjVersionTracker *objv_tracker,
-                 RGWMDLogStatus op_type,
-                 optional_yield y);
-  int post_modify(const DoutPrefixProvider *dpp, 
-                  RGWSI_MetaBackend::Context *ctx,
-                  const std::string& key,
-                  RGWMetadataLogData& log_data,
-                  RGWObjVersionTracker *objv_tracker, int ret,
-                  optional_yield y);
-
-  int get_entry(RGWSI_MetaBackend::Context *ctx,
-                const std::string& key,
-                RGWSI_MetaBackend::GetParams& params,
-                RGWObjVersionTracker *objv_tracker,
-                optional_yield y,
-                const DoutPrefixProvider *dpp,
-                bool get_raw_attrs=false) override;
-  int put_entry(const DoutPrefixProvider *dpp, 
-                RGWSI_MetaBackend::Context *ctx,
-                const std::string& key,
-                RGWSI_MetaBackend::PutParams& params,
-                RGWObjVersionTracker *objv_tracker,
-                optional_yield y) override;
-  int remove_entry(const DoutPrefixProvider *dpp, 
-                   RGWSI_MetaBackend::Context *ctx,
-                   const std::string& key,
-                   RGWSI_MetaBackend::RemoveParams& params,
-                   RGWObjVersionTracker *objv_tracker,
-                   optional_yield y) override;
-
-  int list_init(const DoutPrefixProvider *dpp, RGWSI_MetaBackend::Context *_ctx, const std::string& marker) override;
-  int list_next(const DoutPrefixProvider *dpp,
-                RGWSI_MetaBackend::Context *_ctx,
-                int max, std::list<std::string> *keys,
-                bool *truncated) override;
-  int list_get_marker(RGWSI_MetaBackend::Context *ctx,
-                      std::string *marker) override;
-
-  int get_shard_id(RGWSI_MetaBackend::Context *ctx,
-                  const std::string& key,
-                  int *shard_id) override;
-
-  int call(std::optional<RGWSI_MetaBackend_CtxParams> opt,
-           std::function<int(RGWSI_MetaBackend::Context *)> f) override;
-};
-
-
-class RGWSI_MetaBackend_Handler_SObj : public RGWSI_MetaBackend_Handler {
-  friend class RGWSI_MetaBackend_SObj::Context_SObj;
-
-  RGWSI_MBSObj_Handler_Module *module{nullptr};
-
-public:
-  RGWSI_MetaBackend_Handler_SObj(RGWSI_MetaBackend *be) : 
-                                            RGWSI_MetaBackend_Handler(be) {}
-  
-  void set_module(RGWSI_MBSObj_Handler_Module *_module) {
-    module = _module;
-  }
-
-  RGWSI_MBSObj_Handler_Module *get_module() {
-    return module;
-  }
-};
diff --git a/src/rgw/services/svc_meta_be_types.h b/src/rgw/services/svc_meta_be_types.h
deleted file mode 100644 (file)
index 6b3a919..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab ft=cpp
-
-/*
- * Ceph - scalable distributed file system
- *
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software
- * Foundation. See file COPYING.
- *
- */
-
-#pragma once
-
-enum RGWSI_META_BE_TYPES {
-  SOBJ   = 1,
-  BUCKET = 3,
-  BI     = 4,
-  USER   = 5,
-};
-
index 1e0533d2e8dec9804747637d53fcc5f09eb1af5d..a77f1168b64bf1847b8262c71b5581e2d89334e7 100644 (file)
@@ -9,7 +9,6 @@
 #include "svc_zone.h"
 #include "svc_sys_obj.h"
 #include "svc_sys_obj_cache.h"
-#include "svc_meta.h"
 
 #include "rgw_user.h"
 #include "rgw_account.h"
@@ -40,8 +39,7 @@ void RGWSI_User_RADOS::init(librados::Rados* rados_,
                             RGWSI_Zone *_zone_svc,
                             RGWSI_MDLog *mdlog_svc,
                             RGWSI_SysObj *_sysobj_svc,
-                            RGWSI_SysObj_Cache *_cache_svc,
-                            RGWSI_Meta *_meta_svc)
+                            RGWSI_SysObj_Cache *_cache_svc)
 {
   svc.user = this;
   rados = rados_;
@@ -49,7 +47,6 @@ void RGWSI_User_RADOS::init(librados::Rados* rados_,
   svc.mdlog = mdlog_svc;
   svc.sysobj = _sysobj_svc;
   svc.cache = _cache_svc;
-  svc.meta = _meta_svc;
 }
 
 int RGWSI_User_RADOS::do_start(optional_yield, const DoutPrefixProvider *dpp)
index 24c2368062f67f4122e78d2031581cd5cc667c87..db2e2042bd460b5c08efd1d16973b1c1b57d42da 100644 (file)
@@ -26,7 +26,6 @@ class RGWSI_MDLog;
 class RGWSI_Zone;
 class RGWSI_SysObj;
 class RGWSI_SysObj_Cache;
-class RGWSI_Meta;
 class RGWSI_SyncModules;
 
 struct rgw_cache_entry_info;
@@ -78,7 +77,6 @@ public:
     RGWSI_MDLog *mdlog{nullptr};
     RGWSI_SysObj *sysobj{nullptr};
     RGWSI_SysObj_Cache *cache{nullptr};
-    RGWSI_Meta *meta{nullptr};
   } svc;
 
   RGWSI_User_RADOS(CephContext *cct);
@@ -88,8 +86,7 @@ public:
             RGWSI_Zone *_zone_svc,
             RGWSI_MDLog *mdlog_svc,
             RGWSI_SysObj *_sysobj_svc,
-            RGWSI_SysObj_Cache *_cache_svc,
-            RGWSI_Meta *_meta_svc);
+            RGWSI_SysObj_Cache *_cache_svc);
 
   int create_lister(const DoutPrefixProvider* dpp,
                     const std::string& marker,