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

Vladislav Pyatkov reassigned IGNITE-17637:
------------------------------------------

    Assignee: Vladislav Pyatkov  (was: Sergey Uttsel)

> Implement a commit partition path write intent resolution logic for RO reads
> ----------------------------------------------------------------------------
>
>                 Key: IGNITE-17637
>                 URL: https://issues.apache.org/jira/browse/IGNITE-17637
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Sergey Uttsel
>            Assignee: Vladislav Pyatkov
>            Priority: Major
>              Labels: ignite-3, transaction3_ro
>
> Need to perform writeIntent resolution by commit partition path if a 
> coordinator path was not able to resolve the intent.
>  # A write intent contains a commit partition id \{UUID tableId, int partId}.
>  # Need to create a PlacementDriver which contains a map of assignments 
> \{UUID tableId, int partId} -> Set<ClusterNode>
>  # Assignments are updated in TableManager#updateAssignmentInternal.
>  # PartitionReplicaListener contains placementDriver and replicaService.
>  # PartitionReplicaListener read a write intent, get a commit partition id, 
> get assignments and send TxStateReq to first ClusterNode by ReplicaService.
>  ## On receiving a cluster node check that it is a leader, read the txn state 
> from the persistent storage and send response with tx state. If txState not 
> found, return NULL outcome in a TxStateResp.
>  ## If the node isn't a leader, then it send response with leader and 
> PartitionReplicaListener resend TxStateReq to the leader.
>  ## If leader is unknown then PartitionReplicaListener send TxStateReq to 
> another ClusterNode
>  # If txState is found, validate a commit timestamp (only for committed 
> state).
>  # Retry commit partition path until a success or timeout.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to