[ 
https://issues.apache.org/jira/browse/AMQ-5664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14541070#comment-14541070
 ] 

Michael Dillon edited comment on AMQ-5664 at 5/13/15 2:55 PM:
--------------------------------------------------------------

Seeing a similar issue with AMQ broker using v 5.10.  The client is using 
verison 5.10 of the AMQ libraries.  This happens at least a couple of times a 
month per client.  The client shows as  connected/Active, but does not process 
more messages.  The Messages Awaiting Acknowledgement increases up to the 
prefetch limit for durable subscribers of the topics.  I do not have a test 
case to reporcude this as it happens randomly.  The only thing of note is that 
once the error happens the broker and the client exchange bits every 10 seconds 
(assuming this is the keepalive) until the client is restarted.

2015-05-12_18:59:53.39814 Exception in thread "ActiveMQ Connection Dispatcher: 
tcp://11.11.11.111:2291" java.util.ConcurrentModificationException
2015-05-12_18:59:53.39830       at 
java.util.HashMap$HashIterator.nextNode(HashMap.java:1429)
2015-05-12_18:59:53.39831       at 
java.util.HashMap$KeyIterator.next(HashMap.java:1453)
2015-05-12_18:59:53.39831       at 
org.apache.activemq.util.MarshallingSupport.marshalPrimitiveMap(MarshallingSupport.java:61)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.command.Message.beforeMarshall(Message.java:231)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.command.ActiveMQTextMessage.beforeMarshall(ActiveMQTextMessage.java:115)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.v10.MessageMarshaller.looseMarshal(MessageMarshaller.java:281)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.v10.ActiveMQMessageMarshaller.looseMarshal(ActiveMQMessageMarshaller.java:111)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.v10.ActiveMQTextMessageMarshaller.looseMarshal(ActiveMQTextMessageMarshaller.java:111)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.OpenWireFormat.looseMarshalNestedObject(OpenWireFormat.java:480)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.openwire.v10.BaseDataStreamMarshaller.looseMarshalNestedObject(BaseDataStreamMarshaller.java:471)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.openwire.v10.MessageDispatchMarshaller.looseMarshal(MessageDispatchMarshaller.java:139)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.openwire.OpenWireFormat.marshal(OpenWireFormat.java:237)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:175)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.AbstractInactivityMonitor.doOnewaySend(AbstractInactivityMonitor.java:304)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.AbstractInactivityMonitor.oneway(AbstractInactivityMonitor.java:286)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:85)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:104)
2015-05-12_18:59:53.39835       at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1370)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:889)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:935)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:112)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:42)


was (Author: mike3d3):
Seeing a similar issue with AMQ broker using v 5.10.  The client is using 
verison 5.8.0 of the AMQ libraries.  This happens at least a couple of times a 
month per client.  The client shows as  connected/Active, but does not process 
more messages.  The Messages Awaiting Acknowledgement increases up to the 
prefetch limit for durable subscribers of the topics.  I do not have a test 
case to reporcude this as it happens randomly.  The only thinkg of note is that 
once the error happens the broker and the client exchange bits every 10 seconds 
untile the client is restarted.

2015-05-12_18:59:53.39814 Exception in thread "ActiveMQ Connection Dispatcher: 
tcp://11.11.11.111:2291" java.util.ConcurrentModificationException
2015-05-12_18:59:53.39830       at 
java.util.HashMap$HashIterator.nextNode(HashMap.java:1429)
2015-05-12_18:59:53.39831       at 
java.util.HashMap$KeyIterator.next(HashMap.java:1453)
2015-05-12_18:59:53.39831       at 
org.apache.activemq.util.MarshallingSupport.marshalPrimitiveMap(MarshallingSupport.java:61)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.command.Message.beforeMarshall(Message.java:231)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.command.ActiveMQTextMessage.beforeMarshall(ActiveMQTextMessage.java:115)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.v10.MessageMarshaller.looseMarshal(MessageMarshaller.java:281)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.v10.ActiveMQMessageMarshaller.looseMarshal(ActiveMQMessageMarshaller.java:111)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.v10.ActiveMQTextMessageMarshaller.looseMarshal(ActiveMQTextMessageMarshaller.java:111)
2015-05-12_18:59:53.39832       at 
org.apache.activemq.openwire.OpenWireFormat.looseMarshalNestedObject(OpenWireFormat.java:480)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.openwire.v10.BaseDataStreamMarshaller.looseMarshalNestedObject(BaseDataStreamMarshaller.java:471)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.openwire.v10.MessageDispatchMarshaller.looseMarshal(MessageDispatchMarshaller.java:139)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.openwire.OpenWireFormat.marshal(OpenWireFormat.java:237)
2015-05-12_18:59:53.39833       at 
org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:175)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.AbstractInactivityMonitor.doOnewaySend(AbstractInactivityMonitor.java:304)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.AbstractInactivityMonitor.oneway(AbstractInactivityMonitor.java:286)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:85)
2015-05-12_18:59:53.39834       at 
org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:104)
2015-05-12_18:59:53.39835       at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1370)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:889)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:935)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:112)
2015-05-12_18:59:53.39836       at 
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:42)

> ConcurrentModificationException seen from client send of TextMessage
> --------------------------------------------------------------------
>
>                 Key: AMQ-5664
>                 URL: https://issues.apache.org/jira/browse/AMQ-5664
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker, JMS client
>    Affects Versions: 5.11.1
>            Reporter: Timothy Bish
>
> While running test against the new QPid AMQP JMS client we send some messages 
> to a Queue via the OpenWire JMS client over a VM transport connection for 
> later consumption by the AMQP JMS client.  During a recent test run we caught 
> this:
> {noformat}
> Tests run: 18, Failures: 0, Errors: 1, Skipped: 1, Time elapsed: 27.368 sec 
> <<< FAILURE! - in org.apache.qpid.jms.consumer.JmsMessageConsumerTest
> testSetMessageListenerAfterStartAndSend(org.apache.qpid.jms.consumer.JmsMessageConsumerTest)
>   Time elapsed: 0.596 sec  <<< ERROR!
> javax.jms.JMSException: java.util.ConcurrentModificationException
>         at 
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:54)
>         at 
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1420)
>         at 
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1346)
>         at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1904)
>         at 
> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:288)
>         at 
> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:223)
>         at 
> org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:468)
>         at 
> org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBroker.java:297)
>         at 
> org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)
>         at 
> org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:307)
>         at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:152)
>         at 
> org.apache.activemq.security.AuthorizationBroker.send(AuthorizationBroker.java:223)
>         at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:152)
>         at 
> org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:157)
>         at 
> org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:541)
>         at 
> org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:768)
>         at 
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:334)
>         at 
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
>         at 
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
>         at 
> org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
>         at 
> org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:248)
>         at 
> org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:133)
>         at 
> org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> Caused by: java.util.ConcurrentModificationException: null
>         at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429)
>         at java.util.HashMap$KeyIterator.next(HashMap.java:1453)
>         at 
> org.apache.activemq.util.MarshallingSupport.marshalPrimitiveMap(MarshallingSupport.java:61)
>         at 
> org.apache.activemq.command.Message.beforeMarshall(Message.java:231)
>         at 
> org.apache.activemq.command.ActiveMQTextMessage.beforeMarshall(ActiveMQTextMessage.java:115)
>         at 
> org.apache.activemq.openwire.v10.MessageMarshaller.looseMarshal(MessageMarshaller.java:281)
>         at 
> org.apache.activemq.openwire.v10.ActiveMQMessageMarshaller.looseMarshal(ActiveMQMessageMarshaller.java:111)
>         at 
> org.apache.activemq.openwire.v10.ActiveMQTextMessageMarshaller.looseMarshal(ActiveMQTextMessageMarshaller.java:111)
>         at 
> org.apache.activemq.openwire.OpenWireFormat.marshal(OpenWireFormat.java:155)
>         at 
> org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.addMessage(KahaDBStore.java:427)
>         at 
> org.apache.activemq.store.kahadb.KahaDBStore$StoreQueueTask.run(KahaDBStore.java:1296)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> {noformat}
> Will need to dig in and see how this happened when we have a chance.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to