Evaluation

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.

Important

Object locking is expressed using object-level Lifepoint header(s). This enables object locking to have higher precedence than lifecycle policies.

  • 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

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

Important

  • Keep the policy.lifecycle cluster setting and bucket lifecycle policies always activated to apply to an object within the bucket.

  • The Policy-Lifecycle-Evaluated response header value is either "enabled" or "disabled", but the actual policies are applied live on the bucket Policy-Lifecycle header.

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.

© DataCore Software Corporation. · https://www.datacore.com · All rights reserved.