ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com>
Subject cache operation failed after transaction rolled back due to deadlock
Date Fri, 19 Jan 2018 12:55:38 GMT
Hi, Igntrs!

When you have your transaction rolled back due to detected deadlock, you
are unabled to perform cache operations (in thread where tx was started and
rolled back), because it leads to TransactionTimeoutException.

The reason of such behavior is that tx thread map (txManager#threadMap) was
not cleared from tx when roll back occured.

In GridNearTxLocal#onTimeout you can find comment on that :

*// Note: if rollback asynchronously on timeout should not clear thread map*

*// since thread started tx still should be able to see this tx.*

Cache operation picks up tx from that map and throws exception.

So, one must create new thread in order to perform cache operations?


*Best Regards,*

*Kuznetsov Aleksey*

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message