Repeated the test with refactored project with 100 producers sharing same jms template which is configured to use cached connection factory. After several 1,000,000s of messages in 60+ minutes, the producers hang with following exception.
Name: producerTaskExecutor-27 State: RUNNABLE Total blocked: 2 Total waited: 4,926 Stack trace: java.net.SocketOutputStream.socketWrite0(Native Method) java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:113) java.net.SocketOutputStream.write(SocketOutputStream.java:159) org.apache.activemq.transport.tcp.TcpBufferedOutputStream.flush(TcpBufferedOutputStream.java:115) java.io.DataOutputStream.flush(DataOutputStream.java:123) org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:176) org.apache.activemq.transport.AbstractInactivityMonitor.doOnewaySend(AbstractInactivityMonitor.java:322) org.apache.activemq.transport.AbstractInactivityMonitor.oneway(AbstractInactivityMonitor.java:304) org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:85) org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:104) org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68) org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60) org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1304) org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1298) org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1782) - locked java.lang.Object@5229aec6 org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:289) org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:224) org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:269) org.springframework.jms.connection.CachedMessageProducer.send(CachedMessageProducer.java:121) org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:589) org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:569) org.springframework.jms.core.JmsTemplate$4.doInJms(JmsTemplate.java:546) org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:466) org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:543) producer.ProducerTask.run(ProducerTask.java:43) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang.Thread.run(Thread.java:744) -- View this message in context: http://activemq.2283324.n4.nabble.com/Hung-Producer-tp4678060p4678114.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
