You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Gary Tully <ga...@gmail.com> on 2012/10/01 11:58:59 UTC

Re: ActiveMQ message groups ConcurrentModificationException

This may be related to concurrentStoreAndDispatchQueues=true, the
question is what is making changes to the properties of the message
after it is send and while it is being stored.

Is the TraceBrokerPathPlugin installed on the broker, that could be a culprit.

Is copyMessageOnSend disabled on the producers that use vmtransport

maybe post your xml config and camel context.

On 28 September 2012 20:35, boday <be...@initekconsulting.com> wrote:
> I'm using AMQ message groups with AMQ 5.5.0-fuse-00-27 with Kahadb persistent
> messaging and periodically see this WARN in the logs. I don't see any
> specific errors that result from this, but am wondering what the side
> effects of this are, etc.
>
> My consumer is a Camel (2.7.1-fuse-00-27) route with
> maxConcurrentConsumers=5 (using AMQ connection pool, etc). I'll try to boil
> this down to a unit test at some point...for now, here is the stack trace
>
> (NOTE: posted on SFO as well...no action there yet, so I tried here instead)
>
> http://stackoverflow.com/questions/12644272/activemq-message-groups-concurrentmodificationexception
>
> 2012-09-28 16:39:04,497 |  WARN | TransportConnection.java | Async error
> occurred: java.util.concurrent.ExecutionException:
> java.util.ConcurrentModificationException
> java.util.concurrent.ExecutionException:
> java.util.ConcurrentModificationException
>     at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
>     at java.util.concurrent.FutureTask.get(FutureTask.java:83)
>     at org.apache.activemq.broker.region.Queue.doMessageSend(Queue.java:730)
>     at org.apache.activemq.broker.region.Queue.send(Queue.java:652)
>     at
> org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:379)
>     at
> org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:523)
>     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:304)
>     at
> org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)
>     at
> org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:468)
>     at
> org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:681)
>     at
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:316)
>     at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>     at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
>     at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
>     at
> org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:218)
>     at
> org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
>     at
> org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
> Caused by: java.util.ConcurrentModificationException
>     at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
>     at java.util.HashMap$KeyIterator.next(HashMap.java:828)
>     at
> org.apache.activemq.util.MarshallingSupport.marshalPrimitiveMap(MarshallingSupport.java:64)
>     at org.apache.activemq.command.Message.beforeMarshall(Message.java:210)
>     at
> org.apache.activemq.command.ActiveMQObjectMessage.beforeMarshall(ActiveMQObjectMessage.java:199)
>     at
> org.apache.activemq.openwire.v6.MessageMarshaller.looseMarshal(MessageMarshaller.java:277)
>     at
> org.apache.activemq.openwire.v6.ActiveMQMessageMarshaller.looseMarshal(ActiveMQMessageMarshaller.java:111)
>     at
> org.apache.activemq.openwire.v6.ActiveMQObjectMessageMarshaller.looseMarshal(ActiveMQObjectMessageMarshaller.java:111)
>     at
> org.apache.activemq.openwire.OpenWireFormat.marshal(OpenWireFormat.java:167)
>     at
> org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.addMessage(KahaDBStore.java:357)
>     at
> org.apache.activemq.store.kahadb.KahaDBStore$StoreQueueTask.run(KahaDBStore.java:1102)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>     at java.lang.Thread.run(Thread.java:680)
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-message-groups-ConcurrentModificationException-tp4657221.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.



-- 
http://fusesource.com
http://blog.garytully.com