WLS Threads get stuck when exception "HeuristicHazard, (javax.transaction.xa.XAException: Two rollba
Hi All,
We have just migrated WLS from 10.3 to 12.1.1.0.2 in our production environment. In our application we are using non-XA JDBC connection pool to emulate 2PC transactions.
For details, please check link: http://docs.oracle.com/cd/E24329_01/web.1211/e24367/transactions.htm#i1211062
When some exception comes then container starts rolling back the transaction as expected. The error in log file shows a Heuristic condition which is the expected behavior. However this rollback of current transaction is not successful and this causes the WLS threads in stuck state.
<22-11-2013 13:49:35 CET> <Error> <JTA> <BEA-110412> <Name=[EJB com.csc.opuslab.server.processing.facade.ProcessingUtilBean.invokeMethod(com.csc.opuslab.server.processing.event.Event)],Xid=BEA1-61DBE326BF903A688762(1999337259),Status=Rolled back. [Reason=Unknown],HeuristicErrorCode=XA_HEURHAZ,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=55,seconds left=10744,activeThread=Thread[Event handler-36,5,Pooled Threads],XAServerResourceInfo[OpusLabPool_Leda]=(ServerResourceInfo[OpusLabPool_Leda]=(state=rolledback,assigned=LedaNode1),xar=weblogic.jdbc.wrapper.JTSEmulateXAResourceImpl@7aa57aa5,re-Registered = false),SCInfo[Leda+LedaNode1]=(state=rolledback),properties=({weblogic.jdbc.remote.OpusLabPool=t3://p520-fe3.dk.emea.csc.com:7013, weblogic.transaction.name=[EJB com.csc.opuslab.server.processing.facade.ProcessingUtilBean.invokeMethod(com.csc.opuslab.server.processing.event.Event)]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=LedaNode1+p520-fe3.dk.emea.csc.com:7013+Leda+t3+, XAResources={OpusLabPool_Leda, WSATGatewayRM_LedaNode1_Leda, WLStore_Leda_PrintingJMSStore},NonXAResources={})],CoordinatorURL=LedaNode1+p520-fe3.dk.emea.csc.com:7013+Leda+t3+) completed heuristically: (OpusLabPool_Leda, HeuristicHazard, (javax.transaction.xa.XAException: Two rollbacks failed. The first one threw Protokolovertrædelse: [52]. The second one threw Protokolovertrædelse: [25])) .>
0