Denis Chudov created IGNITE-27411:
-------------------------------------

             Summary: Transaction exception may be lost for user
                 Key: IGNITE-27411
                 URL: https://issues.apache.org/jira/browse/IGNITE-27411
             Project: Ignite
          Issue Type: Bug
            Reporter: Denis Chudov


In some cases user may get something like this:

 
{code:java}
SQL query execution error Transaction is already finished 
txId=[019b212c-5d7b-0000-399b-326d00000001, txState=FINISHING]{code}
 

 

*Scenario:*
 * in case of transaction exception, post-enlist will rollback the transaction 
on coordinator;
 * transaction is transitioned into state FINISHING, rollback is in progress;
 * parallel request (sql, data streamer, etc.) can't be made because of 
finishing state and instantly fails with "Transaction is already finished" 
exception, which is passed to the user and the original exception that caused 
rollback is lost.

*Possible solution:*

in case of finishing state we should wait for completion of finish future. The 
tx meta with final state should contain the information about original 
exception (see IGNITE-27386 ), and this exception should be passed to the user.



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

Reply via email to