Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-5171

TxConnectionManager is track-connection-by-tx false by default

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • JBossAS-5.0.0.Beta4
    • JBossAS-5.0.0.Beta3
    • JCA service
    • None

      The TxConnectionManager is always configured to be track-connection-by-tx by default.

      The old xslt used to do some complicated logic to try to determine the value

      XA with track-connection-by-tx
      <xsl:choose>
      <xsl:when test="(xa-transaction) and (track-connection-by-tx)">
      <attribute name="TrackConnectionByTx">true</attribute>
      <attribute name="LocalTransactions">false</attribute>
      </xsl:when>
      XA with interleaving
      <xsl:when test="(xa-transaction)">
      <attribute name="TrackConnectionByTx">false</attribute>
      <attribute name="LocalTransactions">false</attribute>
      </xsl:when>
      Non XA MUST BE track-connection-by-tx
      <xsl:otherwise>
      <attribute name="TrackConnectionByTx">true</attribute>
      <attribute name="LocalTransactions">true</attribute>
      </xsl:otherwise>
      </xsl:choose>

      The last part is not being done by the new connection factory deployer/metadata.

      In fact, to simplify it (and answer some FAQs), I suggested that <track-connection-by-tx/> should be "dropped" and set to true all the time (with a warning about deprecation when somebody tries to use it).
      Instead users of XA should explicity enable <interleaving/>

              olubyans@redhat.com Alexey Loubyansky
              adrian.brock Adrian Brock (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: