glassfish
  1. glassfish
  2. GLASSFISH-19143

XAResource.setTransactionTimeout(encompassingJTATransactionTImeoutValue) is not being called on resources enlisted in a Glassfish transaction.

    Details

    • Type: Improvement Improvement
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 3.1.2
    • Fix Version/s: None
    • Component/s: jts
    • Labels:
      None
    • Environment:

      Linux adc2100774 2.6.18-308.0.0.0.1.el5xen #1 SMP Sat Feb 25 16:26:29 EST 2012 x86_64 x86_64 x86_64 GNU/Linux

      Description

      XAResource.setTransactionTimeout(encompassingJTATransactionTImeoutValue) is not being called on resources enlisted in a Glassfish transaction.

      Javadoc for the XAResource.setTransactionTimeout: "Once set, this timeout value is effective until setTransactionTimeout is invoked again with a different value." Which means that if an XAResource has a predefined timeout less than the timeout set on the UserTransaction, the transaction manager has no control (and should not have any according to the text above) over the XAResource behavior.

      The javadoc does not state this as a requirement. Note that the javadoc does say "Sets the current transaction timeout value for this |XAResource| instance. " suggesting, as is the case, that each XAResource in question is an instance related to a transaction.

      However, in all other application servers, XAResource.setTransactionTimeout(encompassingJTATransactionTImeoutValue) is the default behavior (in WebLogic there is an override option but even that is not suggested best practice) and it makes logical sense as the XAResource is always a part of a JTA transaction and thus the timeout values are directly related.

      Glassfish should make Glassfish xa-resource-timeout dynamic in future releases.

        Activity

        jleinawe created issue -
        Hide
        marina vatkina added a comment -

        The current support is static using transaction-service.property.xaresource-txn-timeout to set the timeout for all XA resources.

        Show
        marina vatkina added a comment - The current support is static using transaction-service.property.xaresource-txn-timeout to set the timeout for all XA resources.
        marina vatkina made changes -
        Field Original Value New Value
        Issue Type Bug [ 1 ] Improvement [ 4 ]

          People

          • Assignee:
            marina vatkina
            Reporter:
            jleinawe
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: