Announcement Announcement Module
Collapse
No announcement yet.
JTA Weblogic Transaction rollback problem Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • JTA Weblogic Transaction rollback problem

    Hi,

    I'm using JTA for Transaction management. For one of my method the execution time is sometimes very long, and I set the JTA timeout in weblogic console to 1500 second.

    The problem is when this timeout is reached by the transaction the following error occurs and the transaction is commit in stead of beiing rollbacked !! I'm using Weblogic 7, spring 1.2.8.

    bean configuration :
    <bean id="ristournePassageService" class="org.springframework.transaction.interceptor .TransactionProxyFactoryBean">
    <description>XXXXX</description>
    <property name="target" ref="ristournePassageServiceTarget"/>
    <property name="transactionManager" ref="transactionManager" />
    <property name="transactionAttributes">
    <props>
    <prop key="saveRistournePassage">PROPAGATION_REQUIRED,-JobExecutionException</prop>
    </props>
    </property>
    </bean>

    <bean id="transactionManager" class="org.springframework.transaction.jta.WebLogi cJtaTransactionManager">
    <property name="transactionManagerName"
    value="javax.transaction.TransactionManager"/>
    </bean>

    the error :

    org.quartz.JobExecutionException: org.springframework.transaction.UnexpectedRollback Exception: JTA transaction unexpectedly rolled back (maybe due to a timeout); nested exception is weblogic.transaction.RollbackException: Transaction timed out after 9 seconds
    Name=com.toto.interfaces.ristourne.IRistournePassa geService.saveRistournePassage,Xid=0:4c179f59(2478 667),Status=Active,numRepliesOwedMe=0,numRepliesOw edOthers=0,seconds since begin=1499,seconds left=10,activeThread=Thread[Scheduler_Worker-4,5,main],SCInfo[toto]=(state=active),properties=({weblogic.transaction. name=com.toto.service.interfaces.ristourne.IRistou rnePassageService.saveRistournePassage}),OwnerTran sactionManager=ServerTM[ServerCoordinatorDescriptor=
    Thanks for your help

  • #2
    I would enable DEBUG level logging for org.springframework.transaction. That way you can see what the TM is doing in regerds to commit/rollback.

    Comment


    • #3
      Thanks for your reply

      I already try to enable Debug level for org.springframework.transaction and we only seeing after the log in first post that the transaction is commited. that's all.

      So the RollbackException occurs and then the transaction is committed !

      Comment


      • #4
        In the weblogic support about transaction it's written that when a TimeOut Exception occured the timeout will not discontinue or interupt any thread fro performance issue. When the thread finishes its work, it will get a TimedOutException which needs to be handled by application.

        So the commit is done, the thread is finished when spring transaction manager try to rollback.

        Comment


        • #5
          Logging in WLS

          You can also switch on some tx-logging in wls with:

          -Dweblogic.Debug=weblogic.JTAXA,weblogic.JTA2PC,web logic.JTAJDBC

          Comment


          • #6
            ... or have a look at this

            http://support.bea.com/application_c...msPattern.html

            Comment

            Working...
            X