ECS: S3 Lifecycle Delete Scanner (LDS) not working on versioning OFF buckets on ECS 3.8.1
Summary: In ECS 3.8.1.x, LDS does not trigger a newly applied policy to objects for versioning OFF buckets.
Symptoms
A bucket with versioning set OFF (non-versioning enabled bucket), a new lifecycle policy is applied to existing objects.
Sample policy:
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Rule>
<ID>in</ID>
<Prefix>abc/xyz</Prefix>
<Status>Enabled</Status>
<Expiration>
<Days>1</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>
The policy is then found to have not taken effect, and bucket listing shows expired objects still not deleted.
Sample Listing: object matching the prefix still appear in the listing even though they are expired (older than 1 day)
[MTIME]: 2025-02-25T15:46:32.405Z [SIZE]: 1488041 [OBJECT]: abc/xyz/CDE_20250225154aaaaa.dat
[MTIME]: 2025-02-27T14:34:53.302Z [SIZE]: 74938 [OBJECT]: abc/xyz/CDE_20250227143aaaaa.dat
[MTIME]: 2025-02-27T15:31:14.174Z [SIZE]: 230337 [OBJECT]: abc/xyz/CDE_20250227153aaaaa.dat
[MTIME]: 2025-03-04T18:01:15.108Z [SIZE]: 152016 [OBJECT]: abc/xyz/CDE_20250304180aaaaa.dat
[MTIME]: 2025-02-25T15:46:14.727Z [SIZE]: 433766 [OBJECT]: abc/xyz/CDE_20250225154aaaaa.dat
[MTIME]: 2025-02-26T13:00:51.655Z [SIZE]: 15888 [OBJECT]: abc/xyz/CDE_20250226130aaaaa.dat
[MTIME]: 2025-02-26T19:00:56.724Z [SIZE]: 11111 [OBJECT]: abc/xyz/CDE_20250226190aaaaa.dat
[MTIME]: 2025-02-26T23:30:47.104Z [SIZE]: 11892 [OBJECT]: abc/xyz/CDE_20250226233aaaaa.dat
[MTIME]: 2025-02-27T04:00:59.589Z [SIZE]: 6914 [OBJECT]: abc/xyz/CDE_20250227040aaaaa.dat
[MTIME]: 2025-02-27T08:02:25.596Z [SIZE]: 0 [OBJECT]: abc/xyz/CDE_20250227080aaaaa.dat
[MTIME]: 2025-02-27T12:30:51.687Z [SIZE]: 0 [OBJECT]: abc/xyz/CDE_20250227123aaaaa.dat
[MTIME]: 2025-02-27T15:31:12.039Z [SIZE]: 30494 [OBJECT]: abc/xyz/CDE_20250227153aaaaa.dat
[MTIME]: 2025-03-04T17:30:53.601Z [SIZE]: 228674 [OBJECT]: abc/xyz/CDE_20250304173aaaaa.dat
[MTIME]: 2025-03-05T20:30:47.875Z [SIZE]: 38760 [OBJECT]: abc/xyz/CDE_20250305203aaaaa.dat
[MTIME]: 2025-02-25T15:46:08.499Z [SIZE]: 26506 [OBJECT]: abc/xyz/CDE_20250225154aaaaa.dat
[MTIME]: 2025-02-27T14:34:52.043Z [SIZE]: 14719 [OBJECT]: abc/xyz/CDE_20250227143aaaaa.dat
[MTIME]: 2025-02-27T15:31:11.496Z [SIZE]: 16078 [OBJECT]: abc/xyz/CDE_20250227153aaaaa.dat
[MTIME]: 2025-03-04T18:01:14.990Z [SIZE]: 12745 [OBJECT]: abc/xyz/CDE_20250304180aaaaa.dat
Lifecycle delete scanner is enabled.
admin@ecs:~> svc_param info com.emc.ecs.resource.lifecycledeletescanner.enable
svc_param v1.2.4 (svc_tools v2.22.0) Started 2025-04-25 20:18:15
Param: com.emc.ecs.resource.lifecycledeletescanner.enable
Description Enable or disable LifeCycleDeleteScanner
Default value false
Configured Value (active) true
Modification reason test
Last modified 2023-04-09 13:36:55 UTC (1744205815102)
admin@ecs:~>
Cause
There is a known issue with LDS in ECS code 3.8.1.x that causes this behavior.
Resolution
For quick relief a temporary Workaround:
Issuing a version listing command using any S3 client enacts the policy on the expired objects and deletes them. Only "version listing" triggers the policy, even in non-version enabled bucket.
If the issue persists on ECS code 3.8.1, then engage Dell ECS technical support to assist with necessary remediation.
Long-Term fix: This issue is resolved in ObjectScale code 4.0 and higher.