Skip to content

Only marshal lifecycle rule Filter XML when not empty#2177

Merged
harshavardhana merged 1 commit intominio:masterfrom
amigan:checkEmptyFilter
Nov 8, 2025
Merged

Only marshal lifecycle rule Filter XML when not empty#2177
harshavardhana merged 1 commit intominio:masterfrom
amigan:checkEmptyFilter

Conversation

@amigan
Copy link
Copy Markdown
Contributor

@amigan amigan commented Nov 8, 2025

This is a backport of sorts of minio/minio#10851. Some server implementations (namely, DigitalOcean Spaces) a) do not work with the modern Rule.Filter.Prefix structure, and b) actively ignore any Rule.Prefix when any Filter whatsoever appears in the XML.

@harshavardhana harshavardhana merged commit b392776 into minio:master Nov 8, 2025
5 checks passed
amigan added a commit to amigan/stillbox that referenced this pull request Nov 9, 2025
isimluk added a commit to isimluk/minio-go that referenced this pull request Mar 18, 2026
https://docs.aws.amazon.com/AmazonS3/latest/API/API_LifecycleRule.html
mentions that

       Filter is required
       if the LifecycleRule does not contain a Prefix element.

After minio#2177, this requirement is broken for bucket-global (=prefixless)
rules. And clients setting such may run into server side validation
issues like.

HTTP/1.1 400 Bad Request

<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>MalformedXML</Code>
  ...
</Error>
isimluk added a commit to isimluk/minio-go that referenced this pull request Mar 19, 2026
https://docs.aws.amazon.com/AmazonS3/latest/API/API_LifecycleRule.html
mentions that

       Filter is required
       if the LifecycleRule does not contain a Prefix element.

After minio#2177, this requirement is broken for bucket-global (=prefixless)
rules. And clients setting such may run into server side validation
issues like.

HTTP/1.1 400 Bad Request

<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>MalformedXML</Code>
  ...
</Error>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants