]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw/dbstore: Fix DBstore build conflicts 42574/head
authorSoumya Koduri <skoduri@redhat.com>
Sat, 31 Jul 2021 13:00:04 +0000 (18:30 +0530)
committerSoumya Koduri <skoduri@redhat.com>
Thu, 5 Aug 2021 08:57:19 +0000 (14:27 +0530)
Fixing build conflicts with latest sal multipart/writer changes.
Also enable WITH_RADOSGW_DBSTORE option by default.

Signed-off-by: Soumya Koduri <skoduri@redhat.com>
CMakeLists.txt
src/rgw/rgw_sal_dbstore.cc
src/rgw/rgw_sal_dbstore.h

index c44ea33b1461103a1e97f4b1fc23aef8030e5723..0350131765570f963270691cc4d0bb9443b95366 100644 (file)
@@ -400,7 +400,7 @@ option(WITH_RADOSGW_BEAST_OPENSSL "Rados Gateway's Beast frontend uses OpenSSL"
 option(WITH_RADOSGW_AMQP_ENDPOINT "Rados Gateway's pubsub support for AMQP push endpoint" ON)
 option(WITH_RADOSGW_KAFKA_ENDPOINT "Rados Gateway's pubsub support for Kafka push endpoint" ON)
 option(WITH_RADOSGW_LUA_PACKAGES "Rados Gateway's support for dynamically adding lua packagess" ON)
-option(WITH_RADOSGW_DBSTORE "DBStore backend for Rados Gateway" OFF)
+option(WITH_RADOSGW_DBSTORE "DBStore backend for Rados Gateway" ON)
 
 if(WITH_RADOSGW)
   find_package(EXPAT REQUIRED)
index f6a35068d8b409328c8d2232c2197e8d95f5facf..4eda3c5cf228befa60ab3595ebb7865174d579eb 100644 (file)
@@ -145,6 +145,13 @@ namespace rgw::sal {
     return ret;
   }
 
+  int DBBucket::remove_bucket_bypass_gc(int concurrent_max, bool
+                                       keep_index_consistent,
+                                       optional_yield y, const
+                                       DoutPrefixProvider *dpp) {
+    return 0;
+  }
+
   int DBBucket::get_bucket_info(const DoutPrefixProvider *dpp, optional_yield y)
   {
     int ret = 0;
@@ -335,6 +342,23 @@ namespace rgw::sal {
     return 0;
   }
 
+  int DBBucket::list_multiparts(const DoutPrefixProvider *dpp,
+                               const string& prefix,
+                               string& marker,
+                               const string& delim,
+                               const int& max_uploads,
+                               vector<std::unique_ptr<MultipartUpload>>& uploads,
+                               map<string, bool> *common_prefixes,
+                               bool *is_truncated) {
+    return 0;
+  }
+
+  int DBBucket::abort_multiparts(const DoutPrefixProvider *dpp,
+                                CephContext *cct,
+                                string& prefix, string& delim) {
+    return 0;
+  }
+
   void DBStore::finalize(void)
   {
     if (dbsm)
@@ -437,6 +461,31 @@ namespace rgw::sal {
     return 0;
   }
 
+  std::unique_ptr<MultipartUpload> DBStore::get_multipart_upload(Bucket* bucket, const std::string& oid, std::optional<std::string> upload_id, ceph::real_time mtime) {
+    return nullptr;
+  }
+
+  std::unique_ptr<Writer> DBStore::get_append_writer(const DoutPrefixProvider *dpp,
+                                 optional_yield y,
+                                 std::unique_ptr<rgw::sal::Object> _head_obj,
+                                 const rgw_user& owner, RGWObjectCtx& obj_ctx,
+                                 const rgw_placement_rule *ptail_placement_rule,
+                                 const std::string& unique_tag,
+                                 uint64_t position,
+                                 uint64_t *cur_accounted_size) {
+    return nullptr;
+  }
+
+  std::unique_ptr<Writer> DBStore::get_atomic_writer(const DoutPrefixProvider *dpp,
+                                 optional_yield y,
+                                 std::unique_ptr<rgw::sal::Object> _head_obj,
+                                 const rgw_user& owner, RGWObjectCtx& obj_ctx,
+                                 const rgw_placement_rule *ptail_placement_rule,
+                                 uint64_t olh_epoch,
+                                 const std::string& unique_tag) {
+    return nullptr;
+  }
+
   std::unique_ptr<User> DBStore::get_user(const rgw_user &u)
   {
     return std::unique_ptr<User>(new DBUser(this, u));
@@ -693,13 +742,6 @@ namespace rgw::sal {
     return 0;
   }
 
-  std::unique_ptr<Writer> DBStore::get_writer(Aio *aio, rgw::sal::Bucket* bucket,
-      RGWObjectCtx& obj_ctx, std::unique_ptr<rgw::sal::Object> _head_obj,
-      const DoutPrefixProvider *dpp, optional_yield y)
-  {
-    return 0;
-  }
-
   int DBStore::delete_raw_obj(const DoutPrefixProvider *dpp, const rgw_raw_obj& obj)
   {
     return 0;
index 6ab0af0b72acd763b9e6a95f6dc7d675027e71a6..e5d584f1f92f04774b5aa7a785a5b1f9b734ab25 100644 (file)
@@ -122,6 +122,10 @@ namespace rgw { namespace sal {
       virtual int list(const DoutPrefixProvider *dpp, ListParams&, int, ListResults&, optional_yield y) override;
       Object* create_object(const rgw_obj_key& key /* Attributes */) override;
       virtual int remove_bucket(const DoutPrefixProvider *dpp, bool delete_children, std::string prefix, std::string delimiter, bool forward_to_master, req_info* req_info, optional_yield y) override;
+      virtual int remove_bucket_bypass_gc(int concurrent_max, bool
+                                       keep_index_consistent,
+                                       optional_yield y, const
+                                       DoutPrefixProvider *dpp) override;
       virtual RGWAccessControlPolicy& get_acl(void) override { return acls; }
       virtual int set_acl(const DoutPrefixProvider *dpp, RGWAccessControlPolicy& acl, optional_yield y) override;
       virtual int get_bucket_info(const DoutPrefixProvider *dpp, optional_yield y) override;
@@ -155,6 +159,17 @@ namespace rgw { namespace sal {
       virtual std::unique_ptr<Bucket> clone() override {
         return std::make_unique<DBBucket>(*this);
       }
+      virtual int list_multiparts(const DoutPrefixProvider *dpp,
+                               const string& prefix,
+                               string& marker,
+                               const string& delim,
+                               const int& max_uploads,
+                               vector<std::unique_ptr<MultipartUpload>>& uploads,
+                               map<string, bool> *common_prefixes,
+                               bool *is_truncated) override;
+      virtual int abort_multiparts(const DoutPrefixProvider *dpp,
+                                CephContext *cct,
+                                string& prefix, string& delim) override;
 
       friend class DBStore;
   };
@@ -288,9 +303,6 @@ namespace rgw { namespace sal {
       virtual std::unique_ptr<Notification> get_notification(rgw::sal::Object* obj, struct req_state* s, 
           rgw::notify::EventType event_type, const std::string* object_name=nullptr) override;
       virtual std::unique_ptr<GCChain> get_gc_chain(rgw::sal::Object* obj) override;
-      virtual std::unique_ptr<Writer> get_writer(Aio *aio, rgw::sal::Bucket* bucket,
-          RGWObjectCtx& obj_ctx, std::unique_ptr<rgw::sal::Object> _head_obj,
-          const DoutPrefixProvider *dpp, optional_yield y) override;
       virtual RGWLC* get_rgwlc(void) override { return NULL; }
       virtual RGWCoroutinesManagerRegistry* get_cr_registry() override { return NULL; }
       virtual int delete_raw_obj(const DoutPrefixProvider *dpp, const rgw_raw_obj& obj) override;
@@ -345,7 +357,22 @@ namespace rgw { namespace sal {
       virtual int get_oidc_providers(const DoutPrefixProvider *dpp,
           const std::string& tenant,
           vector<std::unique_ptr<RGWOIDCProvider>>& providers) override;
-
+      virtual std::unique_ptr<MultipartUpload> get_multipart_upload(Bucket* bucket, const std::string& oid, std::optional<std::string> upload_id, ceph::real_time mtime) override;
+      virtual std::unique_ptr<Writer> get_append_writer(const DoutPrefixProvider *dpp,
+                                 optional_yield y,
+                                 std::unique_ptr<rgw::sal::Object> _head_obj,
+                                 const rgw_user& owner, RGWObjectCtx& obj_ctx,
+                                 const rgw_placement_rule *ptail_placement_rule,
+                                 const std::string& unique_tag,
+                                 uint64_t position,
+                                 uint64_t *cur_accounted_size) override;
+      virtual std::unique_ptr<Writer> get_atomic_writer(const DoutPrefixProvider *dpp,
+                                 optional_yield y,
+                                 std::unique_ptr<rgw::sal::Object> _head_obj,
+                                 const rgw_user& owner, RGWObjectCtx& obj_ctx,
+                                 const rgw_placement_rule *ptail_placement_rule,
+                                 uint64_t olh_epoch,
+                                 const std::string& unique_tag) override;
 
       virtual void finalize(void) override;