[ https://issues.apache.org/jira/browse/IGNITE-23680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17923677#comment-17923677 ]
Vladislav Pyatkov commented on IGNITE-23680: -------------------------------------------- Merged 56f674aadec137439fcbeaa5b06dc800eb3ebb7b > Add the ability to rollback any transaction by ID > ------------------------------------------------- > > Key: IGNITE-23680 > URL: https://issues.apache.org/jira/browse/IGNITE-23680 > Project: Ignite > Issue Type: Improvement > Affects Versions: 3.1 > Reporter: Pavel Pereslegin > Assignee: Vladislav Pyatkov > Priority: Major > Labels: ignite-3, transactions > Fix For: 3.1 > > Time Spent: 2h 40m > Remaining Estimate: 0h > > *Motivation* > In order to implement the SQL command > {code:sql} > KILL TRANSACTION txId > {code} > we need to add a new method to TxManager/improvement of TxManager#finish that > will be able to rollback any read-only and read-write transaction by tx ID. > It also should return the boolean result: true if the tx existed and was > aborted by this command, false otherwise. > For example > {code:java} > // returns false in case transaction not exists / already completed (or > aborted) > CompletableFuture<Boolean> finish(UUID txId); > {code} > *Definition of done* > A method > {noformat} > CompletableFuture<Boolean> TxManager#finish(txId){noformat} > has to be done, which accepts only tx id to abort the transaction on > coordinator. We also should add a link to RW txns instances into volatile tx > states, and a link to RO txns to low watermark locks (or RO tx inflights). > The mentioned method should be able to get tx instance by id and call > finish(commit = false) on it. > Cluster-wide txn finish by id should be done under separate ticket > IGNITE-23695 . -- This message was sent by Atlassian Jira (v8.20.10#820010)