]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: don't use merge_and_store_attrs() when recreating a bucket 64411/head
authorCasey Bodley <cbodley@redhat.com>
Wed, 18 Dec 2024 16:28:02 +0000 (11:28 -0500)
committerCasey Bodley <cbodley@redhat.com>
Wed, 9 Jul 2025 13:35:36 +0000 (09:35 -0400)
commitebee7fa53b3c9e084897e076faaaf0ee2cc7223f
tree4e30a0a5afa0d2a271affb8d50700ac53dbf1c8c
parent0e03dd518689493b5afcd82100e026734877af9c
rgw: don't use merge_and_store_attrs() when recreating a bucket

https://github.com/ceph/ceph/pull/56583 recently fixed
merge_and_store_attrs() to preserve existing attrs, but this broke the
swift api's ability to remove container metadata. RGWCreateBucket
handles this merging itself with prepare_add_del_attrs(), so we should
just assign createparams.attrs to the bucket and store it with
bucket->put_info()

make the same change for RGWPutMetadataBucket which swift uses to
add/remove existing metadata

Fixes: https://tracker.ceph.com/issues/69301
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 340e353de6882dcd6e327d6691da9ef2b767ab4f)

Conflicts:
src/rgw/rgw_op.cc
  local 'attrs' instead of 'createparams.attrs'
  put_info() on reef doesn't take optional_yield
src/rgw/rgw_op.cc