]
Tomas Hofman moved JBEAP-15011 to WFLY-10674:
---------------------------------------------
Project: WildFly (was: JBoss Enterprise Application Platform)
Key: WFLY-10674 (was: JBEAP-15011)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: JCA
(was: JCA)
set-tx-query-timeout does not work at all because
ContextTransactionManager does not implement
TransactionTimeoutConfiguration#getTimeLeftBeforeTransactionTimeout()
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
Key: WFLY-10674
URL:
https://issues.jboss.org/browse/WFLY-10674
Project: WildFly
Issue Type: Bug
Components: JCA
Reporter: Tomas Hofman
Assignee: Tomas Hofman
Labels: regression
{{set-tx-query-timeout}} feature depends on
{{org.jboss.tm.TransactionTimeoutConfiguration#getTimeLeftBeforeTransactionTimeout()}} to
get the remaining time of transaction timeout from transaction manager.
{{org.jboss.as.connector.services.transaction.integration.TransactionIntegrationServer}}
passes transaction manager instance to
{{org.jboss.jca.core.tx.jbossts.TransactionIntegrationImpl}}. The transaction manager
instance is different between EAP 7.0.x and EAP 7.1.0 (IIUC, this change happened because
of Elytron integration):
- In EAP 7.0.x, the instance is
{{com.arjuna.ats.jbossatx.jta.TransactionManagerDelegate}} which implements
{{org.jboss.tm.TransactionTimeoutConfiguration}}.
- In EAP 7.1.0, the instance is
{{org.wildfly.transaction.client.ContextTransactionManager}} which does not implement
{{org.jboss.tm.TransactionTimeoutConfiguration}}.
Therefore, {{set-tx-query-timeout}} feature does not work in EAP 7.1.0.
To fix this issue, I think {{org.wildfly.transaction.client.ContextTransactionManager}}
needs to implement
{{org.jboss.tm.TransactionTimeoutConfiguratio#getTimeLeftBeforeTransactionTimeout()}}