From 5ce2ed72ab7eef1548ad9bbc41aa59bc4fdcca42 Mon Sep 17 00:00:00 2001 From: "J. Eric Ivancich" Date: Tue, 22 Oct 2024 13:17:14 -0400 Subject: [PATCH] rgw: fix empty storage class on display of multipart uploads Some multipart uploads do not have a stored storage class, however the code is written such that an empty storage class is treated as the "STANDARD" storage class. So when encoding the storage class in JSON, use the canonical storage. Signed-off-by: J. Eric Ivancich (cherry picked from commit eab096c188d2430ccc3e865b614b845f1a92af08) --- src/cls/rgw/cls_rgw_types.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cls/rgw/cls_rgw_types.cc b/src/cls/rgw/cls_rgw_types.cc index a441fcc36aa..9e4904de5ab 100644 --- a/src/cls/rgw/cls_rgw_types.cc +++ b/src/cls/rgw/cls_rgw_types.cc @@ -180,7 +180,9 @@ void rgw_bucket_dir_entry_meta::dump(Formatter *f) const utime_t ut(mtime); encode_json("mtime", ut, f); encode_json("etag", etag, f); - encode_json("storage_class", storage_class, f); + encode_json("storage_class", + rgw_placement_rule::get_canonical_storage_class(storage_class), + f); encode_json("owner", owner, f); encode_json("owner_display_name", owner_display_name, f); encode_json("content_type", content_type, f); -- 2.47.3