Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-507

WebSphere MQ 8 RA - [TCK] UserTransaction.rollback() closes connection

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • 7.0.0.DR6, 7.0.0.DR7
    • None
    • None

    Description

      TCK 7 tests -
      com/sun/ts/tests/jms/ee/mdb/mdb_exceptQ/MDBClient.java#Test1
      com/sun/ts/tests/jms/ee/mdb/mdb_exceptQ/MDBClient.java#Test15
      com/sun/ts/tests/jms/ee/mdb/mdb_exceptQ/MDBClient.java#Test2

      fail with following exception:

      10:17:43,873 WARN  [com.arjuna.ats.jta] (default-threads - 7) ARJUNA016045: attempted rollback of < formatId=131077, gtrid_length=29, bqual_length=36, tx_uid=0:ffff7f000001:7e57664e:55b5e90b:3b, node_name=1, branch_uid=0:ffff7f000001:7e57664e:55b5e90b:3d, subordinatenodename=null, eis_name=java:/jms/QueueConnectionFactory > (XAResourceWrapperImpl@5fe54ccc[xaResource=com.ibm.mq.connector.xa.XARWrapper@554ad05 pad=false overrideRmValue=null productName=WebSphere MQ productVersion=%I% %E% %U% jndiName=java:/jms/QueueConnectionFactory]) failed with exception code XAException.XAER_NOTA: javax.transaction.xa.XAException: The method 'xa_rollback' has failed with errorCode '-4'.
      	at com.ibm.mq.jmqi.JmqiXAResource.rollback(JmqiXAResource.java:881)
      	at com.ibm.mq.connector.xa.XARWrapper.rollback(XARWrapper.java:598)
      	at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.rollback(XAResourceWrapperImpl.java:196)
      	at org.jboss.jca.core.tx.jbossts.XAResourceWrapperStatImpl.rollback(XAResourceWrapperStatImpl.java:160)
      	at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelAbort(XAResourceRecord.java:369)
      	at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:3018)
      	at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2997)
      	at com.arjuna.ats.arjuna.coordinator.BasicAction.Abort(BasicAction.java:1680)
      	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:127)
      	at com.arjuna.ats.arjuna.AtomicAction.abort(AtomicAction.java:186)
      	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.rollbackAndDisassociate(TransactionImple.java:1282)
      	at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.rollback(BaseTransaction.java:143)
      	at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.rollback(BaseTransactionManagerDelegate.java:134)
      	at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.rollback(ServerVMClientUserTransaction.java:182)
      	at SampleMdb.onMessage(SampleMdb.java:94)
      	at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source) [:1.8.0_51]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_51]
      	at java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_51]
      	at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.tx.EjbBMTInterceptor.handleInvocation(EjbBMTInterceptor.java:103) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45) [wildfly-ee-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      	at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.as.ejb3.component.messagedriven.MessageDrivenComponentDescription$5$1.processInvocation(MessageDrivenComponentDescription.java:213) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
      	at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:635)
      	at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
      	at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      	at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)
      	at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      	at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)
      	at SampleMdb$$$view1.onMessage(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source) [:1.8.0_51]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_51]
      	at java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_51]
      	at org.jboss.as.ejb3.inflow.MessageEndpointInvocationHandler.doInvoke(MessageEndpointInvocationHandler.java:139) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at org.jboss.as.ejb3.inflow.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:73) [wildfly-ejb3-10.0.0.Alpha5-redhat-1.jar:10.0.0.Alpha5-redhat-1]
      	at SampleMdb$$$endpoint1.onMessage(Unknown Source)
      	at com.ibm.mq.connector.inbound.MessageEndpointWrapper.onMessage(MessageEndpointWrapper.java:149)
      	at com.ibm.mq.jms.MQSession$FacadeMessageListener.onMessage(MQSession.java:129)
      	at com.ibm.msg.client.jms.internal.JmsSessionImpl.run(JmsSessionImpl.java:3164)
      	at com.ibm.mq.jms.MQSession.run(MQSession.java:937)
      	at com.ibm.mq.connector.inbound.ASFWorkImpl.doDelivery(ASFWorkImpl.java:104)
      	at com.ibm.mq.connector.inbound.AbstractWorkImpl.run(AbstractWorkImpl.java:230)
      	at org.jboss.jca.core.workmanager.WorkWrapper.run(WorkWrapper.java:226)
      	at org.jboss.threads.SimpleDirectExecutor.execute(SimpleDirectExecutor.java:33)
      	at org.jboss.threads.QueueExecutor.runTask(QueueExecutor.java:808)
      	at org.jboss.threads.QueueExecutor.access$100(QueueExecutor.java:45)
      	at org.jboss.threads.QueueExecutor$Worker.run(QueueExecutor.java:828)
      	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_51]
      	at org.jboss.threads.JBossThread.run(JBossThread.java:320)
      
      10:17:43,904 ERROR [org.jboss.jca.core.connectionmanager.listener.TxConnectionListener] (default-threads - 7) IJ000315: Pool QueueConnectionFactory has 1 active handles
      10:17:44,103 ERROR [stderr] (default-threads - 7) com.ibm.msg.client.jms.DetailedIllegalStateException: MQJCA1020: The session is closed.
      10:17:44,104 ERROR [stderr] (default-threads - 7) The application attempted to use a JMS session after it had closed the session.
      10:17:44,104 ERROR [stderr] (default-threads - 7) Modify the application so that it closes the JMS session only after it has finished using the session.
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:188)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:110)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.outbound.SessionWrapper.assertOpen(SessionWrapper.java:938)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.outbound.SessionWrapper.createProducer(SessionWrapper.java:562)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at SampleMdb.onMessage(SampleMdb.java:95)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at java.lang.reflect.Method.invoke(Method.java:497)
      10:17:44,104 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.tx.EjbBMTInterceptor.handleInvocation(EjbBMTInterceptor.java:103)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)
      10:17:44,105 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,106 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.component.messagedriven.MessageDrivenComponentDescription$5$1.processInvocation(MessageDrivenComponentDescription.java:213)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,107 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:635)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      10:17:44,108 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at SampleMdb$$$view1.onMessage(Unknown Source)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at java.lang.reflect.Method.invoke(Method.java:497)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.inflow.MessageEndpointInvocationHandler.doInvoke(MessageEndpointInvocationHandler.java:139)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at org.jboss.as.ejb3.inflow.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:73)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at SampleMdb$$$endpoint1.onMessage(Unknown Source)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.inbound.MessageEndpointWrapper.onMessage(MessageEndpointWrapper.java:149)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.jms.MQSession$FacadeMessageListener.onMessage(MQSession.java:129)
      10:17:44,109 ERROR [stderr] (default-threads - 7) 	at com.ibm.msg.client.jms.internal.JmsSessionImpl.run(JmsSessionImpl.java:3164)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.jms.MQSession.run(MQSession.java:937)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.inbound.ASFWorkImpl.doDelivery(ASFWorkImpl.java:104)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at com.ibm.mq.connector.inbound.AbstractWorkImpl.run(AbstractWorkImpl.java:230)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at org.jboss.jca.core.workmanager.WorkWrapper.run(WorkWrapper.java:226)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at org.jboss.threads.SimpleDirectExecutor.execute(SimpleDirectExecutor.java:33)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at org.jboss.threads.QueueExecutor.runTask(QueueExecutor.java:808)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at org.jboss.threads.QueueExecutor.access$100(QueueExecutor.java:45)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at org.jboss.threads.QueueExecutor$Worker.run(QueueExecutor.java:828)
      10:17:44,110 ERROR [stderr] (default-threads - 7) 	at java.lang.Thread.run(Thread.java:745)
      10:17:44,111 ERROR [stderr] (default-threads - 7) 	at org.jboss.threads.JBossThread.run(JBossThread.java:320)
      

      Cause:
      There is MDB (bean managed) which is receiving message and based on content of the message is executing test in class com.sun.ts.tests.jms.commonee.ParentMsgBeanNoTx

      public void onMessage(Message msg)  {
      ...
      qConnection =
                qFactory.createQueueConnection();
             if (qConnection == null)
                throw new EJBException("MDB connection Error!");
      
             qSession = qConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
      ...
      
             runTests(msg, qSession, testName, p);
      
      

      Important part is creation of connection "qConnection" which is closed unextedly in test Test1:

      public void runGetRollbackOnlyBMT(Message msg, QueueSession qSession, 
                                        String testName) {
      
          result = false;
      
          try {
      
              // get beanManagedTx
              UserTransaction ut = mdc.getUserTransaction();
              ut.begin();
      
              //this should throw an exception
              try {
                  mdc.getRollbackOnly();
      
                  TestUtil.logErr("BMT MDB getRollbackOnly() Test Failed!");
              } catch (java.lang.IllegalStateException e) {
                    result = true;
                    TestUtil.logTrace("BMT MDB getRollbackOnly() Test Succeeded!");
                    TestUtil.logTrace("Got expected IllegalStateException");
              }                
      
              ut.rollback();
      
          }catch (Exception e) {
              TestUtil.logErr("Unexpected exception: ", e);
          }
          // send a message to MDB_QUEUE_REPLY.
          JmsUtil.sendTestResults(testName,result,qSession,queueR);
      }
      

      Debugging showed that connection is closed by ut.rollback(); method. After analysis of trace logs com.arjuna there is enlistment of XAResource associated with connection to TM in call ut.begin(). This happens even if no operation related to this connection happens between ut.begin() and ut.rollback() method. TCK 7 does not expect connection to be closed if ut.rollback() is called. (I also tried to run the same test against ActiveMQ Artemis RA and saw that ut.rollback() does not close connection.)

      Customer impact:
      If UserTransaction.rollback() is called then any XA-capable connection created before will be closed. Workaround is to create new connection after call UserTransaction.rollback()..

      As TCK 7 test and at least one other implementation of JMS RA is not closing connection after UserTransaction.rollback is called. This is considered as a bug in WebSphere MQ 8 RA.

      Attachments

        1. log
          78 kB
        2. server.log
          257 kB

        Activity

          People

            mnovak1@redhat.com Miroslav Novak
            mnovak1@redhat.com Miroslav Novak
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: