Bug #55487
open
bucket lifecycle for aborting old multipart uploads does not work on non-master multisite zone buckets
Added by Chris Durham about 2 years ago.
Updated almost 2 years ago.
Description
I have a two site multisite configuration with rgw buckets that replicate bucket data in both directions. On a given bucket, I have added a lifecycle config that aborts multipart uploads that have been active for over 7 days. This works fine for multipart uploads that were started on the master zone. However, If the multipart upload starts on the slave zone, it never gets aborted.
While I think I understand why this occurs, (I think it has to do with lifecycle operations perhaps only happening on the master zone and then getting replicated - but multipart uploads are specific to a zone), this is unfortunate as I have a misbehaving app that writes to buckets on the slave zone that now requires me to manually abort dozens of multipart uploads every few days.
A lifecycle would be great for this, but alas, it only works on the master zone.
I am using 16.2.8 on Rocky 8.5
I have attached a sample lifecycle policy. The policy does make it to the slave zone, but multipart uploads started on the slave zone never actually get aborted.
Files
lc.json (248 Bytes)
lc.json |
example lifecycle policy for aborting mpart uploads |
Chris Durham, 04/28/2022 09:17 PM
|
|
Related issues
1 (1 open — 0 closed)
Chris Durham wrote:
I have a two site multisite configuration with rgw buckets that replicate bucket data in both directions. On a given bucket, I have added a lifecycle config that aborts multipart uploads that have been active for over 7 days. This works fine for multipart uploads that were started on the master zone. However, If the multipart upload starts on the slave zone, it never gets aborted.
While I think I understand why this occurs, (I think it has to do with lifecycle operations perhaps only happening on the master zone and then getting replicated - but multipart uploads are specific to a zone), this is unfortunate as I have a misbehaving app that writes to buckets on the slave zone that now requires me to manually abort dozens of multipart uploads every few days.
A lifecycle would be great for this, but alas, it only works on the master zone.
I am using 16.2.8 on Rocky 8.5
I have attached a sample lifecycle policy. The policy does make it to the slave zone, but multipart uploads started on the slave zone never actually get aborted.
Argh, I am using 16.2.7 on Rocky 8.5, NOT 16.2.8....
- Related to Bug #44268: multisite/lc: lc doesn't run in the slave added
this is a known issue with metadata sync. the lifecycle policy does replicate, but not its entry in the 'lc list'. you can run 'radosgw-admin lc reshard fix' on the secondary zone to update the 'lc list'
- Status changed from New to Triaged
- Assignee set to Matt Benjamin
@Matt Li: i guess RGWSI_Bucket_SObj::store_bucket_instance_info() and remove_bucket_instance_info() is where we'd want to update the 'lc list'. they're called from both metadata sync, and from local metadata writes
- Target version deleted (
v16.2.8)
Also available in: Atom
PDF