From 79bb28e6b681cdf85b6b1594d0f5e548660285d7 Mon Sep 17 00:00:00 2001 From: "J. Eric Ivancich" Date: Wed, 25 Oct 2023 16:53:58 -0400 Subject: [PATCH] rgw: add layout generation info to "bucket stats" Adds a new field to bucket stats. Also rearranges existing information slightly to make more sense. Also removes the redundancy of showing bucket versioning status in two different ways. Signed-off-by: J. Eric Ivancich (cherry picked from commit 3082cd4701a6825a5a0c9ad0cb69e62361379957) Conflicts: src/rgw/driver/rados/rgw_bucket.cc Cherry-pick notes: - rgw_bucket.cc moved into driver directory post-pacific --- src/rgw/rgw_bucket.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/rgw/rgw_bucket.cc b/src/rgw/rgw_bucket.cc index 8bf6b323abf5e..b495d6b2e1e57 100644 --- a/src/rgw/rgw_bucket.cc +++ b/src/rgw/rgw_bucket.cc @@ -1520,17 +1520,20 @@ static int bucket_stats(rgw::sal::Store* store, formatter->open_object_section("stats"); formatter->dump_string("bucket", bucket->get_name()); - formatter->dump_int("num_shards", - bucket->get_info().layout.current_index.layout.normal.num_shards); formatter->dump_string("tenant", bucket->get_tenant()); + formatter->dump_string("versioning", + bucket->versioned() + ? (bucket->versioning_enabled() ? "enabled" : "suspended") + : "off"); formatter->dump_string("zonegroup", bucket->get_info().zonegroup); formatter->dump_string("placement_rule", bucket->get_info().placement_rule.to_str()); ::encode_json("explicit_placement", bucket->get_key().explicit_placement, formatter); formatter->dump_string("id", bucket->get_bucket_id()); formatter->dump_string("marker", bucket->get_marker()); formatter->dump_stream("index_type") << bucket->get_info().layout.current_index.layout.type; - formatter->dump_bool("versioned", bucket_info.versioned()); - formatter->dump_bool("versioning_enabled", bucket_info.versioning_enabled()); + formatter->dump_int("index_generation", bucket->get_info().layout.current_index.gen); + formatter->dump_int("num_shards", + bucket->get_info().layout.current_index.layout.normal.num_shards); formatter->dump_bool("object_lock_enabled", bucket_info.obj_lock_enabled()); formatter->dump_bool("mfa_enabled", bucket_info.mfa_enabled()); ::encode_json("owner", bucket->get_info().owner, formatter); -- 2.39.5