Table of Contents | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Policy Precedence
When the policy is disabled at the cluster level, the cluster-level lifecycle policy takes higher precedence over the domain and bucket-level policy specifications.
Domain-level lifecycle policies take precedence over bucket-level lifecycle policies.
Object-level
Lifepoint
headers (indicating non-deletion) take precedence over bucket-level lifecycle policies.
Info |
---|
ImportantObject locking is expressed using object-level |
The first lifecycle policy that indicates expiration or any object-level
Lifepoint
headers (indicating deletion) determines the actual expiration date.
Policy Evaluation
Bucket lifecycle policies leverage an existing context-level policy evaluation mechanism, but with some caveats.
Evaluation Results for Objects within a Bucket
policy.lifecycle cluster setting | Policy-Lifecycle domain header | Policy-Lifecycle bucket header | Policy enabled/disabled |
---|---|---|---|
disabled | <any> | <any> | disabled |
enabled | enabled | <present> | enabled |
enabled | <unspecified> | <present> | enabled |
Info |
---|
Important
|
The Lifepoint
headers take precedence over lifecycle policies on an object. An object that inhibits deletion using Lifepoint
headers is considered live, but the lifecycle policy header evaluation is not performed. The policy evaluation framework determines whether the lifecycle policies are in effect for the object or not, based on the above table. The lifecycle policies are parsed and applied to the object if so. Within each expiration type (current or past version), the earliest expiration date is applied using any policy rule. Swarm tolerates unknown name:value
attributes on lifecycle policies discovered on domains and buckets in the cluster to support future-proofing and rolling upgrades.