Yah, I can verify this is the case. Threads leak because the threadpoolexecutor doesn't evict the threads. Checking for the best solution to this.
On Sun, Jun 16, 2013 at 4:07 AM, lzr <[email protected]> wrote: > Dear all, > > > I found a thread leak issue during try activemq 5.6: > I create connection when sending message and close it once the sending > finished. > Occassionally I restart activemq broker and found one thread generated > with name "ActiveMQ Connection Executor...". > For deep research, I restarted the broker several times and same number > thread generated; I attached the picture of my debug. > Could anybody give me some clues? I just want to know if this is a bug for > ActiveMQ. The attachments includes my applications and the debugging > pictures. > > > It would be much appreciated if you make any suggestion!!! > > > Thanks in advance, > Zhuran Li > > > > > > > > > At 2013-06-14 23:03:55,"Christian Posta" <[email protected]> > wrote: > >Would need to be able to re-create this... Please put together a unit test > >that reproduces this. > > > > > >On Fri, Jun 14, 2013 at 1:00 AM, lzr <[email protected]> wrote: > > > >> Dear all, > >> > >> > >> I'm using Acitvemq 5.6 with my app and struggling to handle the > following > >> Exception: > >> 2013-06-13 09:53:46,018 | WARN | Send failed for: ActiveMQObjectMessage > >> {commandId = 6, responseRequired = false, messageId = > >> ID:nfsnnc02-46547-1370842535042-0:547519:1:1:1, originalDestination = > null, > >> originalTransactionId = null, producerId = > >> ID:nfsnnc02-46547-1370842535042-0:547519:1:1, destination = > >> queue://10408_base, transactionId = > >> TX:ID:nfsnnc02-46547-1370842535042-0:547519:1, expiration = 0, > timestamp = > >> 1371088670829, arrival = 0, brokerInTime = 1371088426003, brokerOutTime > = > >> 0, correlationId = null, replyTo = null, persistent = true, type = null, > >> priority = 4, groupID = null, groupSequence = 0, targetConsumerId = > null, > >> compressed = false, userID = null, content = > >> org.apache.activemq.util.ByteSequence@c4b67b, marshalledProperties = > >> org.apache.activemq.util.ByteSequence@a84ac2, dataStructure = null, > >> redeliveryCounter = 0, size = 0, properties = {createtime=2013-06-13 > >> 09:57:50, datasize=1, syncflag=bd_defdoc}, readOnlyProperties = false, > >> readOnlyBody = false, droppable = fals > >> e}, missing producer state for: > >> org.apache.activemq.broker.ProducerBrokerExchange@c44470 | > >> org.apache.activemq.broker.region.Queue | ActiveMQ Transport: tcp:/// > >> 10.1.100.66:64118 > >> 2013-06-13 09:53:46,018 | WARN | Async error occurred: > >> javax.jms.JMSException: Cannot send message to queue://10408_base with > >> invalid (null) producer state | > >> org.apache.activemq.broker.TransportConnection.Service | ActiveMQ > >> Transport: tcp:///10.1.100.66:64118 > >> javax.jms.JMSException: Cannot send message to queue://10408_base with > >> invalid (null) producer state > >> at org.apache.activemq.broker.region.Queue.send(Queue.java:589) > >> at > >> > org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:407) > >> at > >> > org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:503) > >> at > >> > org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBroker.java:305) > >> at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129) > >> at > >> > org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96) > >> at > >> > org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:306) > >> at > >> > org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135) > >> at > >> > org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:453) > >> at > >> > org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:681) > >> at > >> > org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292) > >> at > >> > org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:150) > >> at > >> > org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50) > >> at > >> > org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113) > >> at > >> > org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:229) > >> at > >> > org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) > >> at > >> > org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222) > >> at > >> > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204) > >> at java.lang.Thread.run(Thread.java:619) > >> > >> > >> Could anybody give me some clue? It would be much appreciated if any > >> questions. > >> > >> > >> Thanks a lot, > >> Zhuran Li > > > > > > > > > >-- > >*Christian Posta* > >http://www.christianposta.com/blog > >twitter: @christianposta > -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta
