Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-189

transaction manager is not properly closing connections on slave server when slave server has exceptions.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 4.2.3
    • None
    • JTS
    • None
    • Workaround Exists
    • Hide

      The workaround is a pain:
      the slave server can catch every throwable, set transaction as rollback only and return some flag to indicate if the operation is successful or not.

      Show
      The workaround is a pain: the slave server can catch every throwable, set transaction as rollback only and return some flag to indicate if the operation is successful or not.

      This is fully discussed at the forum: http://www.jboss.org/index.html?module=bb&op=viewtopic&t=97856

      I am using JBoss4.0.5.GA and JBossTS4.2.2. I have a ServerA and ServerB and a client. here is my flow senario:

      Code:

      1. client call a stateless session BeanA on ServerA,
      2. BeanA do some pre work,
      3. BeanA then call another stateless session BeanB on serverB,
      4. BeanB do some work,
      5. BeanA do some post work.

      the result shows that if either step 2 or step 5 failed, then the whole transaction get rollbacked correctly. but if step 4 failed, then transaction on ServerA rollback, but the transaction on ServerB does not get rollbacked or committed, we can see the debug information says the xa datasource transaction get started but never get rollbacked. and the database connection remains in use, and when we run the test several times, all the database connections will used up.

            kconner@redhat.com Kevin Conner (Inactive)
            r_q_d Quande Ren (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: