-
Bug
-
Resolution: Done
-
Major
-
JBoss A-MQ 6.0, JBoss A-MQ 6.1
The MarshallingSupport.marshalPrimitiveMap() method is iterating through a Map's key set; during which, the set is modified by another thread, resulting in a ConcurrentModificationException.| Exception in thread "ActiveMQ BrokerService[amq-tpmsgbsv01] Task-40" java.util.ConcurrentModificationException|
INFO | jvm 1 | 2013/11/04 16:43:13 | at java.util.HashMap$HashIterator.nextEntry(Unknown Source) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at java.util.HashMap$KeyIterator.next(Unknown Source) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.util.MarshallingSupport.marshalPrimitiveMap(MarshallingSupport.java:61) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.command.Message.beforeMarshall(Message.java:226) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.command.ActiveMQTextMessage.beforeMarshall(ActiveMQTextMessage.java:107) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.v9.MessageMarshaller.looseMarshal(MessageMarshaller.java:277) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.v9.ActiveMQMessageMarshaller.looseMarshal(ActiveMQMessageMarshaller.java:111) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.v9.ActiveMQTextMessageMarshaller.looseMarshal(ActiveMQTextMessageMarshaller.java:111) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.OpenWireFormat.looseMarshalNestedObject(OpenWireFormat.java:497) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.v9.BaseDataStreamMarshaller.looseMarshalNestedObject(BaseDataStreamMarshaller.java:471) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.v9.MessageDispatchMarshaller.looseMarshal(MessageDispatchMarshaller.java:139) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.openwire.OpenWireFormat.marshal(OpenWireFormat.java:254) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:175) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.transport.AbstractInactivityMonitor.doOnewaySend(AbstractInactivityMonitor.java:322) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.transport.AbstractInactivityMonitor.oneway(AbstractInactivityMonitor.java:304) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:85) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:104) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1378) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:897) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:943) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:129) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:47) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) |
INFO | jvm 1 | 2013/11/04 16:43:13 | at java.lang.Thread.run(Unknown Source) |
See attached wrapper.log.