Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-10674

set-tx-query-timeout does not work at all because ContextTransactionManager does not implement TransactionTimeoutConfiguration#getTimeLeftBeforeTransactionTimeout()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 14.0.0.Beta2
    • None
    • JCA

    Description

      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()

      Attachments

        Issue Links

          Activity

            People

              thofman Tomas Hofman
              thofman Tomas Hofman
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: