Uploaded image for project: 'Application Server 7'
  1. Application Server 7
  2. AS7-3016

Lazy enlistment of JMS Session does not work - UserTransaction implementation does not support it

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • 7.1.0.Final
    • 7.1.0.Beta1b
    • Transactions
    • None

      This test case was identified in TCK6. There is a MDB with CMT configured - com/sun/ts/tests/jms/ee/mdb/xa

      The testsuite sends a message to MDB
      MDB
      1) creates a QueueSession
      2) Start UT
      3) Send a message
      4) Rollback UT
      5) Start UT
      6) Send a message
      7) commit UT

      Unfortunately the semantics is broken as QueueSession is not enlisted into transactions.
      The enlistment is done when UserTransaction emits a notification org/jboss/tm/usertx/UserTransactionRegistry. The enlistment is done by JCA component which receives the notification and enlists all active XAResources.

      Unfortunately the notification is emitted by org/jboss/tm/usertx/client/ServerVMClientUserTransaction. Unfortunately org/jboss/as/txn/service/ArjunaTransactionManagerService hard-codes com.arjuna.ats.internal.jta.transaction.arjunacore.UserTransactionImple which does not have this capability.

      It is necessary to support this scenario as it is tested in TCKs.

        1. usertransaction.patch
          3 kB
          Tom Jenkinson
        2. userTransactionRegistry.diff
          6 kB
          Stuart Douglas

              sdouglas1@redhat.com Stuart Douglas (Inactive)
              jpechane Jiri Pechanec
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: