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

Roman Puchkovskiy updated IGNITE-24361:
---------------------------------------
    Reviewer: Mikhail Efremov

> Implement TxRecoveryMessage processing for zone replica
> -------------------------------------------------------
>
>                 Key: IGNITE-24361
>                 URL: https://issues.apache.org/jira/browse/IGNITE-24361
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Alexander Lapin
>            Assignee: Roman Puchkovskiy
>            Priority: Major
>              Labels: ignite-3
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> h3. Motivation
> Within colocation track we should reasonably move table-not-specific requests 
> and commands processing from PartitionReplicaListener and PartitionListener 
> to ZonePartitionReplicaListener and ZonePartitionRaftListener. 
> TxRecoveryMessage is one of such requests to be moved. In this particular 
> case TxRecoveryMessage is expected to be moved.
> h3. Definition of Done
>  * Transaction recovery triggered by abandoned tx touch works properly.
> h3. Implementation Notes
>  * As for OrphanDetector#sendTxRecoveryMessage we will have zoneId instead of 
> tableId because it's retrieved from WI.commitPartitionId. 
> SeeOrphanDetector#checkTxOrphanedInternal for more details. 
> {code:java}
> partitionOperationsExecutor.execute(() -> 
> sendTxRecoveryMessage(txState.commitPartitionId(), txId));{code}
> However we will need to use proper request to message conversion. Please pay 
> attention to toTablePartitionIdMessage.
> {code:java}
> .groupId(toTablePartitionIdMessage(REPLICA_MESSAGES_FACTORY, 
> cmpPartGrp)){code}
>  * Copy PartitionReplicaListener#processTxRecoveryMessage along with 
> corresponding trigger to  ZonePartitionReplicaListener.
>  * Hide original PartitionReplicaListener#processTxRecoveryMessage under 
> colocation feature flag.
>  * Implement corresponding smoke test to ensure that transaction recovery 
> works properly.



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

Reply via email to