]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: use BucketReshardState states in appropriate places
authorShilpa Jagannath <smanjara@redhat.com>
Tue, 9 Jun 2020 03:05:27 +0000 (08:35 +0530)
committerCasey Bodley <cbodley@redhat.com>
Fri, 27 May 2022 19:47:31 +0000 (15:47 -0400)
This replaces cls_rgw_reshard_status.

Remove unused parameters in cls_rgw_bucket_instance_entry.
Other minor cleanup fixes.

Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
src/cls/rgw/cls_rgw.cc
src/cls/rgw/cls_rgw_types.cc
src/cls/rgw/cls_rgw_types.h
src/rgw/rgw_admin.cc
src/rgw/rgw_reshard.cc
src/rgw/rgw_reshard.h
src/rgw/services/svc_bi_rados.cc

index b7000882a42a2f55e405a1e75c17932c5e1387fe..5cef58e62ca209d6b0f2f5176cdae32ad4ac6168 100644 (file)
@@ -4474,7 +4474,7 @@ static int rgw_set_bucket_resharding(cls_method_context_t hctx, bufferlist *in,
     return rc;
   }
 
-  header.new_instance.set_status(op.entry.bucket_instance_id, op.entry.num_shards, op.entry.reshard_status);
+  header.new_instance.set_status(op.entry.reshard_status);
 
   return write_bucket_header(hctx, &header);
 }
index 8e0ac57dd9cf2ed4f4fce3467fd2c0ea6745b511..4b7d533d1ff5788a2633b50bc183b6a19c53fce3 100644 (file)
@@ -822,9 +822,6 @@ void cls_rgw_reshard_entry::generate_test_instances(list<cls_rgw_reshard_entry*>
 void cls_rgw_bucket_instance_entry::dump(Formatter *f) const
 {
   encode_json("reshard_status", to_string(reshard_status), f);
-  encode_json("bucket_instance_id", bucket_instance_id, f);
-  encode_json("num_shards", num_shards, f);
-
 }
 
 void cls_rgw_bucket_instance_entry::generate_test_instances(
@@ -833,7 +830,6 @@ list<cls_rgw_bucket_instance_entry*>& ls)
   ls.push_back(new cls_rgw_bucket_instance_entry);
   ls.push_back(new cls_rgw_bucket_instance_entry);
   ls.back()->reshard_status = RESHARD_STATUS::IN_PROGRESS;
-  ls.back()->bucket_instance_id = "instance_id";
 }
 
 void cls_rgw_lc_entry::dump(Formatter *f) const
index c0bce8aa4bb4694c051eb00200ba2f2c7c0ebf5c..2a8d5cc4c1668911405acfd8e3f75a84c4faf7b6 100644 (file)
@@ -796,24 +796,24 @@ struct cls_rgw_bucket_instance_entry {
   using RESHARD_STATUS = cls_rgw_reshard_status;
   
   cls_rgw_reshard_status reshard_status{RESHARD_STATUS::NOT_RESHARDING};
-  std::string bucket_instance_id;
-  int32_t num_shards{-1};
 
   void encode(ceph::buffer::list& bl) const {
-    ENCODE_START(1, 1, bl);
+    ENCODE_START(2, 1, bl);
     encode((uint8_t)reshard_status, bl);
-    encode(bucket_instance_id, bl);
-    encode(num_shards, bl);
     ENCODE_FINISH(bl);
   }
 
   void decode(ceph::buffer::list::const_iterator& bl) {
-    DECODE_START(1, bl);
+    DECODE_START(2, bl);
     uint8_t s;
     decode(s, bl);
     reshard_status = (cls_rgw_reshard_status)s;
-    decode(bucket_instance_id, bl);
-    decode(num_shards, bl);
+    if (struct_v < 2) { // fields removed from v2
+      std::string bucket_instance_id;
+      decode(bucket_instance_id, bl);
+      int32_t num_shards{-1};
+      decode(num_shards, bl);
+    }
     DECODE_FINISH(bl);
   }
 
@@ -824,12 +824,8 @@ struct cls_rgw_bucket_instance_entry {
     reshard_status = RESHARD_STATUS::NOT_RESHARDING;
   }
 
-  void set_status(const std::string& instance_id,
-                 int32_t new_num_shards,
-                 cls_rgw_reshard_status s) {
+  void set_status(cls_rgw_reshard_status s) {
     reshard_status = s;
-    bucket_instance_id = instance_id;
-    num_shards = new_num_shards;
   }
 
   bool resharding() const {
index 05299e51f4e6325fbf1ec91070f99e6cf4da6afe..538c870aa33d43816890313e823ccb53db6e75ea 100644 (file)
@@ -1149,9 +1149,6 @@ static void show_reshard_status(
   for (const auto& entry : status) {
     formatter->open_object_section("entry");
     formatter->dump_string("reshard_status", to_string(entry.reshard_status));
-    formatter->dump_string("bucket_instance_id",
-                          entry.bucket_instance_id);
-    formatter->dump_int("num_shards", entry.num_shards);
     formatter->close_section();
   }
   formatter->close_section();
index 9eb22ef746e995dfb22944932f10019f755eab3d..d0104951da301a5724869d1e6f2d8761383a9590 100644 (file)
@@ -264,12 +264,10 @@ RGWBucketReshard::RGWBucketReshard(rgw::sal::RadosStore* _store,
 int RGWBucketReshard::set_resharding_status(const DoutPrefixProvider *dpp,
                                             rgw::sal::RadosStore* store,
                                            const RGWBucketInfo& bucket_info,
-                                           const string& instance_id,
-                                           int32_t num_shards,
                                             cls_rgw_reshard_status status)
 {
   cls_rgw_bucket_instance_entry instance_entry;
-  instance_entry.set_status(instance_id, num_shards, status);
+  instance_entry.set_status(status);
 
   int ret = store->getRados()->bucket_set_reshard(dpp, bucket_info, instance_entry);
   if (ret < 0) {
@@ -313,8 +311,6 @@ int RGWBucketReshard::clear_index_shard_reshard_status(const DoutPrefixProvider
 
   if (num_shards < std::numeric_limits<uint32_t>::max()) {
     int ret = set_resharding_status(dpp, store, bucket_info,
-                                   bucket_info.bucket.bucket_id,
-                                   (num_shards < 1 ? 1 : num_shards),
                                    cls_rgw_reshard_status::NOT_RESHARDING);
     if (ret < 0) {
       ldpp_dout(dpp, 0) << "RGWBucketReshard::" << __func__ <<
@@ -404,8 +400,6 @@ public:
        ldpp_dout(dpp, -1) << "Error: " << __func__ <<
          " clear_index_shard_status returned " << ret << dendl;
       }
-
-      // clears new_bucket_instance as well
       set_status(rgw::BucketReshardState::None, dpp);
     }
   }
@@ -709,8 +703,7 @@ int RGWBucketReshard::execute(int num_shards, int max_op_entries,
 
   // set resharding status of current bucket_info & shards with
   // information about planned resharding
-  ret = set_resharding_status(dpp, bucket_info.bucket.bucket_id,
-                             num_shards, cls_rgw_reshard_status::IN_PROGRESS);
+  ret = set_resharding_status(dpp, cls_rgw_reshard_status::IN_PROGRESS);
   if (ret < 0) {
     return ret;
     goto error_out;
index a33af8f3783925edaa1e3f6af91a0a8729628d70..02c097331f3fd21f76d8cdc5e2dffe988e513db6 100644 (file)
@@ -120,15 +120,9 @@ public:
   static int set_resharding_status(const DoutPrefixProvider *dpp,
                                    rgw::sal::RadosStore* store,
                                   const RGWBucketInfo& bucket_info,
-                                  const std::string& instance_id,
-                                  int32_t num_shards,
-                                  cls_rgw_reshard_status status);
-  int set_resharding_status(const DoutPrefixProvider *dpp,
-                           const std::string& instance_id,
-                           int32_t num_shards,
-                            cls_rgw_reshard_status status) {
-    return set_resharding_status(dpp, store, bucket_info,
-                                instance_id, num_shards, status);
+                                   cls_rgw_reshard_status status);
+  int set_resharding_status(const DoutPrefixProvider *dpp, cls_rgw_reshard_status status) {
+    return set_resharding_status(dpp, store, bucket_info, status);
   }
 
   static uint32_t get_max_prime_shards() {
index 7d2cea00e64dfe9876acf0c13c0623fa0097355a..ed4bb39cc4ca51a343d6a0b907772e9570efc2a0 100644 (file)
@@ -406,7 +406,7 @@ int RGWSI_BucketIndex_RADOS::clean_index(const DoutPrefixProvider *dpp, RGWBucke
   dir_oid.append(bucket_info.bucket.bucket_id);
 
   std::map<int, std::string> bucket_objs;
-  get_bucket_index_objects(dir_oid, bucket_info.layout.current_index.layout.normal.num_shards, gen.value_or(0), &bucket_objs);
+  get_bucket_index_objects(dir_oid, bucket_info.layout.current_index.layout.normal.num_shards, gen, &bucket_objs);
 
   return CLSRGWIssueBucketIndexClean(index_pool.ioctx(),
                                     bucket_objs,