Aleksey Plekhanov created IGNITE-15732:
------------------------------------------
Summary: Thin client: Tx can fail if there are concurrent tx
rollbacks by timeout
Key: IGNITE-15732
URL: https://issues.apache.org/jira/browse/IGNITE-15732
Project: Ignite
Issue Type: Bug
Reporter: Aleksey Plekhanov
Due to race between timeout worker and client-connector workers there can be
situations when some transaction is processed by client-connector worker and
concurrently rolled back by timeout worker. In this case, {{threadMap}} can
still contain the reference to this transaction but the transaction state is
already set to "ROLLED_BACK", for such a state client-connector worker does not
suspend the transaction and can proceed to the next request, which uses another
transaction. When resuming this second transaction there is an exception
thrown, since {{IgniteTxManager#threadMap}} is not cleared yet for the current
worker thread:
{noformat}
org.apache.ignite.client.ClientException: Ignite failed to process request
[103]: Thread already has started a transaction. (server status code
[1]){noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)