[
https://issues.apache.org/jira/browse/HDDS-16060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated HDDS-16060:
----------------------------------
Labels: pull-request-available (was: )
> Prevent snapshots and Object Versioning from coexisting on the same bucket
> until fixed
> --------------------------------------------------------------------------------------
>
> Key: HDDS-16060
> URL: https://issues.apache.org/jira/browse/HDDS-16060
> Project: Apache Ozone
> Issue Type: Sub-task
> Reporter: Siyao Meng
> Assignee: Siyao Meng
> Priority: Major
> Labels: pull-request-available
>
> HDDS-15728 defers snapshot interaction beyond the first implementation phase
> and states that Object Versioning and Ozone Snapshots are not expected to be
> used together on the same bucket until that work lands.
> This restriction is currently documented but not enforced.
> h2. Proposal
> Until version-aware snapshot lookup and reclamation (GC) are implemented, OM
> shall enforce mutual exclusion between snapshots and Object Versioning for a
> bucket (and optionally add a dev flag to allow it solely for testing):
> * Reject CreateSnapshot when the resolved source bucket has
> BucketVersioningStatus ENABLED or SUSPENDED.
> * Reject a transition from UNVERSIONED into a versioned state when the
> bucket's snapshot path chain is non-empty.
> * Reject SUSPENDED -> ENABLED while snapshots remain.
> * Allow ENABLED -> SUSPENDED for an already inconsistent mixed-state bucket
> so that new version creation can be stopped.
> * Treat SNAPSHOT_DELETED snapshots that have not yet been purged from the
> path chain as present.
> * Resolve linked buckets and apply the check to the source bucket.
> * If OM encounters a pre-existing mixed state, snapshot-aware key
> reclamation must fail closed: retain the deleted version and do not send its
> blocks to SCM.
> * Once the final snapshot is purged from the path chain, versioning may be
> enabled/resumed and retained deletion work may proceed.
> Return NOT_SUPPORTED_OPERATION with a message explaining that snapshot/Object
> Versioning coexistence is not supported until snapshot-aware version
> reclamation is available.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]