users@glassfish.java.net

Re: Non-Transactional MDB Unable to write message to non-txn queue

From: <glassfish_at_javadesktop.org>
Date: Fri, 14 Sep 2007 10:07:24 PDT

Siva,

The domain/imq/instances/imqbroker/log/log.txt shows the same exception stack trace. It is shown below.

This occurred while doing performance/stress testing. We were pumping large number of messages through the queue. This is not reproducible at will, looks like some race condition/threading condition might be cause it (like the thread still having a transaction bound to ThreadLocal). Next time we run our big test, we will keep an eye on this because it is important to us we don't loose messages since it is a trading system.

Let me know if you have any further ideas.

=========
[11/Sep/2007:21:50:47 EDT] ERROR sendMessage: Sending message failed. Connection ID: 2726108202281766144:
com.sun.messaging.jmq.jmsserver.util.BrokerException: transaction failed: Unexpected Broker Exception: [Transact
ion 2726108202298817536: is not started, ignoring]
        at com.sun.messaging.jmq.jmsserver.data.handlers.DataHandler.routeMessage(DataHandler.java:338)
        at com.sun.messaging.jmq.jmsserver.data.protocol.ProtocolImpl.processMessage(ProtocolImpl.java:822)
        at com.sun.messaging.jmq.jmsserver.service.imq.IMQDirectService.sendMessage(IMQDirectService.java:1926)
        at com.sun.messaging.jms.ra.DirectSession._sendMessage(DirectSession.java:1816)
        at com.sun.messaging.jms.ra.DirectProducer._send(DirectProducer.java:1074)
        at com.sun.messaging.jms.ra.DirectProducer.send(DirectProducer.java:474)
        at com.foliotrade.arch.queue.QueueWrapper.sendWithoutRetry(QueueWrapper.java:1103)
        at com.foliotrade.arch.queue.QueueWrapper.send(QueueWrapper.java:704)
        at com.foliotrade.arch.queue.QueueWrapper.send(QueueWrapper.java:670)
        at com.foliotrade.op.ejb.messagedriven.OrderMatcherMdb.sendResultsToOutputQueue(OrderMatcherMdb.java:145
)
        at com.foliotrade.op.ejb.messagedriven.OrderMatcherMdb.onMessage(OrderMatcherMdb.java:83)
        at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2884)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3975)
        at com.sun.ejb.containers.MessageBeanContainer.deliverMessage(MessageBeanContainer.java:1111)
        at com.sun.ejb.containers.MessageBeanListenerImpl.deliverMessage(MessageBeanListenerImpl.java:74)
        at com.sun.enterprise.connectors.inflow.MessageEndpointInvocationHandler.invoke(MessageEndpointInvocatio
nHandler.java:179)
        at $Proxy60.onMessage(Unknown Source)
        at com.sun.messaging.jms.ra.OnMessageRunner.run(OnMessageRunner.java:249)
        at com.sun.enterprise.connectors.work.OneWork.doWork(OneWork.java:76)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:524)
[11/Sep/2007:21:50:48 EDT] WARNING [B3100]: Unexpected Broker Internal Error : [transaction failed]:
com.sun.messaging.jmq.jmsserver.util.BrokerException: Unexpected Broker Exception: [Transaction 2726108202299172
096: is not started, ignoring]
        at com.sun.messaging.jmq.jmsserver.data.TransactionList.addMessage(TransactionList.java:553)
        at com.sun.messaging.jmq.jmsserver.data.TransactionList.addMessage(TransactionList.java:519)
        at com.sun.messaging.jmq.jmsserver.data.handlers.DataHandler.routeMessage(DataHandler.java:328)
        at com.sun.messaging.jmq.jmsserver.data.protocol.ProtocolImpl.processMessage(ProtocolImpl.java:822)
        at com.sun.messaging.jmq.jmsserver.service.imq.IMQDirectService.sendMessage(IMQDirectService.java:1926)
        at com.sun.messaging.jms.ra.DirectSession._sendMessage(DirectSession.java:1816)
        at com.sun.messaging.jms.ra.DirectProducer._send(DirectProducer.java:1074)
        at com.sun.messaging.jms.ra.DirectProducer.send(DirectProducer.java:474)
        at com.foliotrade.arch.queue.QueueWrapper.sendWithoutRetry(QueueWrapper.java:1103)
        at com.foliotrade.arch.queue.QueueWrapper.send(QueueWrapper.java:704)
        at com.foliotrade.arch.queue.QueueWrapper.send(QueueWrapper.java:670)
        at com.foliotrade.op.ejb.messagedriven.OrderMatcherMdb.sendResultsToOutputQueue(OrderMatcherMdb.java:145
)
        at com.foliotrade.op.ejb.messagedriven.OrderMatcherMdb.onMessage(OrderMatcherMdb.java:83)
        at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2884)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3975)
        at com.sun.ejb.containers.MessageBeanContainer.deliverMessage(MessageBeanContainer.java:1111)
        at com.sun.ejb.containers.MessageBeanListenerImpl.deliverMessage(MessageBeanListenerImpl.java:74)
        at com.sun.enterprise.connectors.inflow.MessageEndpointInvocationHandler.invoke(MessageEndpointInvocatio
nHandler.java:179)
        at $Proxy60.onMessage(Unknown Source)
        at com.sun.messaging.jms.ra.OnMessageRunner.run(OnMessageRunner.java:249)
        at com.sun.enterprise.connectors.work.OneWork.doWork(OneWork.java:76)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:524)
===============

--
Sanjay
[Message sent by forum member 'sanjaydwivedi' (sanjaydwivedi)]
http://forums.java.net/jive/thread.jspa?messageID=235428