.The `Expiration, Days` S3 Lifecycle parameter can now be set to `0`
The Ceph Object Gateway did not accept the value of `0` for the `Expiration, Days` Lifecycle configuration parameter. Consequently, setting the expiration to `0` could not be used to trigger background delete operation of objects. With this update, `Expiration, Days` can be set to `0` as expected.
DescriptionPersona non grata
2017-09-20 09:48:11 UTC
Description of problem:
Enable lifecycle on a bucket and set the number of days to 0, which expires objects immediately. It returned XML error instead of deleting objects.
Version-Release number of selected component (if applicable):
Ceph 3.0
How reproducible:
Always
Steps to Reproduce:
1.Set up a ceph 3.0 cluster.
2.Enable lifecycle on a bucket.
3.Set expiration for objects to 0 day(s).
4.Objects will get deleted immediately.
Actual results:
[root@magna118 ~]# python tc11198.py
log/0ABC.txt
Traceback (most recent call last):
File "tc11198.py", line 38, in <module>
mybucket.configure_lifecycle(lifecycle)
File "/usr/lib/python2.7/site-packages/boto-2.48.0-py2.7.egg/boto/s3/bucket.py", line 1366, in configure_lifecycle
response.status, response.reason, body)
boto.exception.S3ResponseError: S3ResponseError: 400 Bad Request
<?xml version="1.0" encoding="UTF-8"?><Error><Code>InvalidArgument</Code><BucketName>redhat</BucketName><RequestId>tx0000000000000000001f7-0059bb820b-1077-default</RequestId><HostId>1077-default-default</HostId></Error>
Expected results:
Objects will expire immediately.
Additional info:
Test case: CEPH 11198 Specify the number of days in lifecycle rule to 0
Comment 3Persona non grata
2017-09-20 11:46:35 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2020:0312
Comment 29Red Hat Bugzilla
2023-09-18 00:12:44 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 120 days
Description of problem: Enable lifecycle on a bucket and set the number of days to 0, which expires objects immediately. It returned XML error instead of deleting objects. Version-Release number of selected component (if applicable): Ceph 3.0 How reproducible: Always Steps to Reproduce: 1.Set up a ceph 3.0 cluster. 2.Enable lifecycle on a bucket. 3.Set expiration for objects to 0 day(s). 4.Objects will get deleted immediately. Actual results: [root@magna118 ~]# python tc11198.py log/0ABC.txt Traceback (most recent call last): File "tc11198.py", line 38, in <module> mybucket.configure_lifecycle(lifecycle) File "/usr/lib/python2.7/site-packages/boto-2.48.0-py2.7.egg/boto/s3/bucket.py", line 1366, in configure_lifecycle response.status, response.reason, body) boto.exception.S3ResponseError: S3ResponseError: 400 Bad Request <?xml version="1.0" encoding="UTF-8"?><Error><Code>InvalidArgument</Code><BucketName>redhat</BucketName><RequestId>tx0000000000000000001f7-0059bb820b-1077-default</RequestId><HostId>1077-default-default</HostId></Error> Expected results: Objects will expire immediately. Additional info: Test case: CEPH 11198 Specify the number of days in lifecycle rule to 0