8 Replies Latest reply on Oct 16, 2009 10:42 AM by averri

    Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA

    averri

      Hi members,

      I would like to integrate my JBoss v4.2.3 with JBoss Transactions v4.8.0 (standalone, installed as a service).

      How can I configure JBoss to use the JBoss Transactions?

        • 1. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
          jhalliday

          remind me again why I bother to write documentation?

          from the INSTALL file:

          "JBossTS 4.8.GA is designed for use standalone or with JBossAS 6 alpha. It is not suitable for use with earlier versions of JBossAS."

          from the wiki (http://www.jboss.org/community/wiki/JBossTransactionsVersionGuide):

          If you are running with JBossAS 4.2, use the bundled JTA or JBossTS 4.2.3.SP7.
          If you are running with JBossAS 5.1, use the bundled JTA/JTS or JBossTS 4.6.x
          If your are running with JBossAS 6 dev versions (i.e. AS trunk / Alpha / Beta) use JBossTS 4.8 and cross your fingers.

          • 2. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
            averri

            Dear jhalliday,

            your documentation is very complete and excellent. Unfortunately, I did not see the INSTALL file, but I've readed the docs folder.

            Thank you very much and congratulations for the quality of your job.

            • 3. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
              jhalliday

              ok, so now perhaps we can move on to the interesting question: what is wrong with just using the transaction manager already included in the app server? Why do you want a separate install? You need remote tx propagation for something?

              • 4. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
                averri

                Well, I'm getting an error that makes me crazy. It could be related to the JBoss transactions.

                The complete thread is discussed on Mobicents forum:
                http://groups.google.com/group/mobicents-public/browse_thread/thread/12b012f95ec234cc

                Please, see bellow: the transaction suddenly goes to aborted.

                09:15:07,460 ERROR [EventRouterImpl] Unhandled Exception in event router:
                javax.transaction.SystemException: Failed to commit tx. [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.interna
                l.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
                 at org.mobicents.slee.runtime.transaction.TransactionManagerImpl.commit(TransactionManagerImpl.java:352)
                 at org.mobicents.slee.runtime.EventRouterImpl.routeQueuedEvent(EventRouterImpl.java:1111)
                 at org.mobicents.slee.runtime.EventRouterImpl.access$100(EventRouterImpl.java:64)
                 at org.mobicents.slee.runtime.EventRouterImpl$EventExecutor.run(EventRouterImpl.java:121)
                 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
                 at java.lang.Thread.run(Thread.java:619)




                • 5. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
                  jhalliday

                  Transaction timing out? Turn on debug logging for the transaction system, that should show what is aborting it.

                  • 6. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
                    averri

                    At the moment, the information given by transaction system does not helps a lot:

                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] Committing tx
                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] Context local TxID: TransactionImple < ac, BasicAction: -3f57fa29:cb24:4ad873ca:1d7 status: ActionStatus.RUNNING >
                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] beforeCompletion, tx is 1972323090
                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] Executing Prepare actions for transaction : TransactionImple < ac, BasicAction: -3f57fa29:cb24:4ad873ca:1d7 status: ActionStatus.RUNNING >
                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] afterCompletion, status is 4 tx is 1972323090
                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] Transaction: 1972323090 has rolled-back
                    2009-10-16 10:24:55,800 DEBUG [TransactionManagerImpl] Executing rollback actions for transaction:TransactionImple < ac, BasicAction: -3f57fa29:cb24:4ad873ca:1d7 status: ActionStatus.ABORTED >
                    2009-10-16 10:24:55,802 ERROR [EventRouterImpl] Unhandled Exception in event router:
                    javax.transaction.SystemException: Failed to commit tx. [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
                     at org.mobicents.slee.runtime.transaction.TransactionManagerImpl.commit(TransactionManagerImpl.java:352)
                     at org.mobicents.slee.runtime.EventRouterImpl.routeQueuedEvent(EventRouterImpl.java:1111)
                     at org.mobicents.slee.runtime.EventRouterImpl.access$100(EventRouterImpl.java:64)
                     at org.mobicents.slee.runtime.EventRouterImpl$EventExecutor.run(EventRouterImpl.java:121)
                     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
                     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
                     at java.lang.Thread.run(Thread.java:619)


                    • 7. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
                      jhalliday

                      My guess would be heuristic rollback, but you really need the debug trace from the underlying transaction system, not just from mobicents. Or if it's reproducible, stick a debugger breakpoint in commit and step through the code to see what is generating that exception.

                      • 8. Re: Integrating JBoss v4.2.3.GA with JBossTS v4.8.0.GA
                        averri

                        I think that is not related to transaction timeout, because I configured too high timeout.

                        One interesting think about Mobicents is that one thread could initiate the transaction and another one could finish it. I don't know if this could be the cause of the problem, as there are many other applications that works very fine with actual Mobicents version (v1.2.6.GA).