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

Alexander Lapin reassigned IGNITE-21762:
----------------------------------------

    Assignee:  Kirill Sizov

> Do the txn cleanup procedure for all local finished transactions on 
> commitPartition primary replica election
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-21762
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21762
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Alexander Lapin
>            Assignee:  Kirill Sizov
>            Priority: Major
>              Labels: ignite-3
>
> h3. Motivation
> As mentioned in IGNITE-21761 it's valid to remove finished transaction when 
> cleanup is fully replicated over all enlisted partitions. However it's 
> possible that commitPartition that triggers cleanup after txnState update 
> will drop right after a state update but before sending a cleanup request, or 
> it'll be killed during cleanup result processing, or commit partition primary 
> replica will be re-elected, so many bad options...
> All in all that means, that in order to mark persistent txnState as ready for 
> removal it's required to re-send cleanup request on commit partition primary 
> replica election even if it was previously finished.
> h3. Definition of Done
>  * Populate txn persistent state with enlisted partitions on txnState update. 
> It's required in order to determine the list of nodes to which the cleanup 
> request will need to be sent.
>  * In an asynchronous manner on commit partition primary replica election, 
> scan local persistent txn state storage and send cleanup request in a durable 
> manner. We should not use the thread of primary replica election notification 
> for that.
>  * On cleanup completion, meaning cleanup replication over majorities of all 
> enlisted partitions txnStateVolatileMap will be populated with stamped 
> txnState because of logic introduced in IGNITE-21761 



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

Reply via email to