-
Bug
-
Resolution: Done
-
Major
-
None
If the remote call passes transaction context where timeout is set as `0` then Narayana consider that value as transaction which should never be timetouted. But the wfly txn client consider the `0` as correct timeout value which means kind of `immediate timeout`.
The Narayana AtomicAction class consider it as -1[2] (which is used for subordinate transaction[3]) while the transaction reaper consider the value of no timeout to be 0[4].
The client decreases[1] the timeout based on how much time elapsed from the transaction was started till time the remote call is to be accomplished. That means the timeout `0` can be passes even the transaction is not meant as `to never timeout`.
[1] https://github.com/wildfly/wildfly-transaction-client/blob/1.1.2.Final/src/main/java/org/wildfly/transaction/client/AbstractTransaction.java#L141
[2] https://github.com/jbosstm/narayana/blob/5.9.2.Final/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/AtomicAction.java#L61
[3] https://github.com/jbosstm/narayana/blob/5.9.2.Final/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/subordinate/SubordinateAtomicAction.java#L68
[4] https://github.com/jbosstm/narayana/blob/5.9.2.Final/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/TransactionReaper.java#L531
- is cloned by
-
JBEAP-16089 [GSS](7.2.z) WFTC-54 - Integration with Narayana fails when timeout propagation over remote call declares it as '0' causing UserTransaction timeout to not work
- Closed
- relates to
-
WFLY-11698 TransactionTimeoutQueueSetupTask fails to set up max-delivery-attempts properly
- Closed
-
WFLY-11684 Upgrade WildFly Transaction Client to 1.1.3.Final
- Closed
-
WFLY-11687 Upgrade JBoss EJB Client to 4.0.14.Final
- Closed