[ 
https://issues.apache.org/jira/browse/HDDS-15946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated HDDS-15946:
----------------------------------
    Labels: pull-request-available  (was: )

> [Ozone versioning] [T2] VersionId generation strategy framework
> ---------------------------------------------------------------
>
>                 Key: HDDS-15946
>                 URL: https://issues.apache.org/jira/browse/HDDS-15946
>             Project: Apache Ozone
>          Issue Type: Sub-task
>            Reporter: Janus Chow
>            Assignee: Janus Chow
>            Priority: Major
>              Labels: pull-request-available
>
> This ticket includes the follows tasks:
> |*Sub-task*|*Scope*|*Acceptance*|
> |T2.1 interface + default generator|UniqueIdVersionIdGenerator; interface is 
> no-arg generateVersionId() plus a default versionIdFor(proposed, 
> hasCurrentVersion)|shared contract test (strictly increasing) run against 
> every generator; unknown class and class not implementing the interface both 
> rejected; default generator carries no allocator state|
> |T2.2 commit-time ordering floor|VersionIdAllocator.propose() for preExecute, 
> allocate() applying the max floor.|a backwards clock does not reorder a key; 
> a repeated proposal still moves the key forward; versionedKeyTable is never 
> read|
> |T2.3 PINNED_FIRST generator|first-version detection (no current in keyTable) 
> + FIRST_VERSION_ID sentinel|first PUT gets the sentinel, later PUTs get 
> transaction indexes; sentinel sorts before every transaction index; sentinel 
> does not collide with the null slot; selectable by configuration|



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to