Table of Contents |
---|
...
|
Lifepoint Conversions
The Health Processor maintenance mechanism converts objects as necessary between:
...
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 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.
Explicit conversions occur on the next Health Processor cycle following the lifepoint change.
Encoding
...
Conversions
In addition to lifepoint conversions, the Health Processor performs encoding conversions when:
...
If the object is replicated wholly, policy.ecEncoding is specified, and the object size is greater than the policy.ecMinStreamSize value, the object is 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 data-perhaps without lifepoints-to the default cluster encoding scheme, enabling legacy data to take advantage of the new capability. An object remains replicated at scsp.defreps replicas if the object is replicated and policy.ecEncoding is not configured or the object size is less than the policy.ecMinStreamSize value.
The Health Processor converts these objects at a slower rate than the next Health Processor cycle to balance its processing cycles between object conversions and other system requirements. The ec.conversionPercentage setting governs the conversion rate. The ec.conversionPercentage setting defaults to zero, which implies no implicit conversion. Until the object is converted, it is replicated with scsp.defreps reps.
Using
...
Cache Coherency Headers After Erasure Coding
When the Health Processor converts objects from standard replication to erasure coding, it replaces the Etag and the Castor-System-Version header. When the if-match and if-none-match cache coherency headers compare the request header content against the Castor-System-Created header on the object (which does not change during the conversion), the headers believe the object has changed, even though the content data is actually the same. The cache coherency headers do not always operate as expected.
...