mirror of
https://github.com/minio/minio.git
synced 2024-12-27 15:45:55 -05:00
7926401cbd
i.e., this rule element doesn't apply to DEL markers. This is a breaking change to how ExpiredObejctDeleteAllVersions functions today. This is necessary to avoid the following highly probable footgun scenario in the future. Scenario: The user uses tags-based filtering to select an object's time to live(TTL). The application sometimes deletes objects, too, making its latest version a DEL marker. The previous implementation skipped tag-based filters if the newest version was DEL marker, voiding the tag-based TTL. The user is surprised to find objects that have expired sooner than expected. * Add DelMarkerExpiration action This ILM action removes all versions of an object if its the latest version is a DEL marker. ```xml <DelMarkerObjectExpiration> <Days> 10 </Days> </DelMarkerObjectExpiration> ``` 1. Applies only to objects whose, • The latest version is a DEL marker. • satisfies the number of days criteria 2. Deletes all versions of this object 3. Associated rule can't have tag-based filtering Includes, - New bucket event type for deletion due to DelMarkerExpiration |
||
---|---|---|
.. | ||
action_string.go | ||
and.go | ||
delmarker-expiration_test.go | ||
delmarker-expiration.go | ||
error.go | ||
expiration_test.go | ||
expiration.go | ||
filter_test.go | ||
filter.go | ||
lifecycle_test.go | ||
lifecycle.go | ||
noncurrentversion_test.go | ||
noncurrentversion.go | ||
prefix.go | ||
rule_test.go | ||
rule.go | ||
tag.go | ||
transition_test.go | ||
transition.go |