Bug #63997
openlc: ExpiredObjectDeleteMarker only removes one expired delete-marker at a time when there are multiple
0%
Description
The PR https://github.com/ceph/ceph/pull/54957 allows multiple delete markers to be generated. In the case of all of them being expired (no object versions exists), the Expiration lc action with the ExpiredObjectDeleteMarker tag setting to true should remove them. However in the current rgw implementation, only one expired delete-marker is removed in each lc process. Running multiple rounds of lc processes will eventually clean up all the expired delete-markers. This issue won't cause the accumulation of expired delete-markers, since in normal configuration, lc process is recurring.
Please see the following aws doc regarding ExpiredObjectDeleteMarker and delete markers.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lifecycle-config-conceptual-ex7
Is this worth fixing?