X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ceph%2Fsrc%2Frgw%2Frgw_reshard.cc;h=6fcc5f34367a163d6f0eda1ffe5e0a5286cef1e6;hb=b32b81446b3b05102be0267e79203f59329c1d97;hp=a3a712c767234f2cf414c7fd12c7d212efdb062d;hpb=215dd7151453fae88e6f968c975b6ce309d42dcf;p=ceph.git diff --git a/ceph/src/rgw/rgw_reshard.cc b/ceph/src/rgw/rgw_reshard.cc index a3a712c76..6fcc5f343 100644 --- a/ceph/src/rgw/rgw_reshard.cc +++ b/ceph/src/rgw/rgw_reshard.cc @@ -346,7 +346,7 @@ public: int RGWBucketReshard::do_reshard( int num_shards, - const RGWBucketInfo& new_bucket_info, + RGWBucketInfo& new_bucket_info, int max_entries, bool verbose, ostream *out, @@ -470,16 +470,10 @@ int RGWBucketReshard::do_reshard( return EIO; } - RGWBucketAdminOpState bucket_op; - - bucket_op.set_bucket_name(new_bucket_info.bucket.name); - bucket_op.set_bucket_id(new_bucket_info.bucket.bucket_id); - bucket_op.set_user_id(new_bucket_info.owner); - string err; - int r = RGWBucketAdminOp::link(store, bucket_op, &err); - if (r < 0) { - lderr(store->ctx()) << "failed to link new bucket instance (bucket_id=" << new_bucket_info.bucket.bucket_id << ": " << err << "; " << cpp_strerror(-r) << ")" << dendl; - return -r; + ret = rgw_link_bucket(store, new_bucket_info.owner, new_bucket_info.bucket, bucket_info.creation_time); + if (ret < 0) { + lderr(store->ctx()) << "failed to link new bucket instance (bucket_id=" << new_bucket_info.bucket.bucket_id << ": " << cpp_strerror(-ret) << ")" << dendl; + return -ret; } ret = bucket_info_updater.complete(); @@ -620,6 +614,7 @@ int RGWReshard::update(const RGWBucketInfo& bucket_info, const RGWBucketInfo& ne cls_rgw_reshard_entry entry; entry.bucket_name = bucket_info.bucket.name; entry.bucket_id = bucket_info.bucket.bucket_id; + entry.tenant = bucket_info.owner.tenant; int ret = get(entry); if (ret < 0) {