Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Lifepoint conversions

The Health Processor maintenance mechanism converts objects as necessary between:

  • Standard replication and erasure coding

  • Erasure coding and standard replication

When you configure your cluster settings for this type of conversion, the The Health Processor replicates the logical object back into the cluster with the new replication scheme . After the conversion, the when you configure your cluster settings for this type of conversion. The object is visible with some header changes, and the new object version supersedes the older version . If after the conversion is performed in a . The source cluster , it is re-replicated to the target cluster as a new version of the object if the conversion is performed in a source cluster.

Content protection can change due to a set of explicitly specified lifepoint policies over time. An explicit lifepoint specification that includes a reps= value—either as a whole number or a colon-separated k:p EC encoding—takes precedence over any default cluster setting. This explicit conversion responds to explicit lifepoint specifications. Explicit conversions include replication to erasure coding, erasure coding to replication, and erasure coding to another erasure-encoding scheme.

...

In addition to lifepoint conversions, the Health Processor performs encoding conversions when:

  • The cluster includes a policy.ecEncoding value, which sets the number of data and parity segments to be used when erasure coding objects (for example. 5:2).

  • The object is larger than the policy.ecMinStreamSize value, which indicates the minimum size (in bytes) for an object to be automatically erasure-coded.

If the object is replicated wholly, policy.ecEncoding is specified, and the object size is greater than the policy.ecMinStreamSize value, the object will be converted to erasure coding. This implicit conversion occurs because of your cluster settings. Implicit conversions are used to convert legacy data—perhaps without lifepoints—to the default cluster encoding scheme, enabling legacy data to take advantage of the new capability. However, if the object is replicated and policy.ecEncoding is not configured or the object size is less than the policy.ecMinStreamSize value, the object remains replicated at scsp.defreps replicas.

...

To achieve consistent results,

  • Use if-modified-since and if-unmodified-since headers after erasure-coding conversion or during remote replication where either the original or destination object is erasure-coded.

  • Do not use only the Etag header after an erasure-coding conversion because the header may inadvertently change during an object conversion.