From 27409aa1612c1512bf393de22b62bbfe79b104c1 Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Thu, 5 Jul 2012 15:52:51 -0700 Subject: [PATCH] rgw: don't store bucket info indexed by bucket_id Issue #2701. This info wasn't really used anywhere and we weren't removing it. It was also sharing the same pool namespace as the info indexed by bucket name, which is bad. Signed-off-by: Yehuda Sadeh --- src/rgw/rgw_admin.cc | 35 ++++++++++------------------------- src/rgw/rgw_rados.cc | 6 ------ 2 files changed, 10 insertions(+), 31 deletions(-) diff --git a/src/rgw/rgw_admin.cc b/src/rgw/rgw_admin.cc index 8d44c10cfce68..244ce486a6981 100644 --- a/src/rgw/rgw_admin.cc +++ b/src/rgw/rgw_admin.cc @@ -863,30 +863,15 @@ int main(int argc, char **argv) map::iterator uiter; RGWUserInfo old_info = info; - if ((!bucket_name.empty()) || !bucket_id.empty()) { - if (!bucket_id.empty()) { - int ret = rgwstore->get_bucket_info(NULL, bucket_id, bucket_info); - - if (ret < 0) { - cerr << "could not retrieve bucket info for bucket_id=" << bucket_id << std::endl; - return ret; - } - bucket = bucket_info.bucket; - if ((!bucket_name.empty()) && bucket.name.compare(bucket_name.c_str()) != 0) { - cerr << "bucket name does not match bucket id (expected bucket name: " << bucket.name << ")" << std::endl; - return -EINVAL; - } - } else { - string bucket_name_str = bucket_name; - RGWBucketInfo bucket_info; - int r = rgwstore->get_bucket_info(NULL, bucket_name_str, bucket_info); - if (r < 0) { - cerr << "could not get bucket info for bucket=" << bucket_name_str << std::endl; - return r; - } - bucket = bucket_info.bucket; - bucket_id = bucket.bucket_id; + if (!bucket_name.empty()) { + string bucket_name_str = bucket_name; + RGWBucketInfo bucket_info; + int r = rgwstore->get_bucket_info(NULL, bucket_name_str, bucket_info); + if (r < 0) { + cerr << "could not get bucket info for bucket=" << bucket_name_str << std::endl; + return r; } + bucket = bucket_info.bucket; } int err; @@ -1325,8 +1310,8 @@ next: } if (opt_cmd == OPT_BUCKET_STATS) { - if (bucket_name.empty() && bucket_id.empty() && user_id.empty()) { - cerr << "either bucket or bucket-id or uid needs to be specified" << std::endl; + if (bucket_name.empty() && user_id.empty()) { + cerr << "either bucket or uid needs to be specified" << std::endl; return usage(); } formatter->reset(); diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index e7032a0dd972c..e4056c569abdc 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -647,12 +647,6 @@ int RGWRados::store_bucket_info(RGWBucketInfo& info, map *pa if (ret < 0) return ret; - ret = rgw_put_obj(info.owner, pi_buckets_rados, info.bucket.bucket_id, bl.c_str(), bl.length(), false, pattrs); - if (ret < 0) { - ldout(cct, 0) << "ERROR: failed to store " << pi_buckets_rados << ":" << info.bucket.bucket_id << " ret=" << ret << dendl; - return ret; - } - ldout(cct, 20) << "store_bucket_info: bucket=" << info.bucket << " owner " << info.owner << dendl; return 0; } -- 2.39.5