You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Steve Angelovich <SA...@lgc.com> on 2011/06/07 16:45:34 UTC

occasional ConcurrentModificationException when creating a queue consumer

All,

Can anybody give me some ideas about why I get the ConcurrentModificationExcpetion below occasionally.  We are running with version 5.5.

The code that generates this exception is;

LOG.fine("Create response queue") ;
_session2 = _connection.createSession(false, Session.AUTO_ACKNOWLEDGE) ;
_tempDest = _session2.createTemporaryQueue();
_responseConsumer = _session2.createConsumer(_tempDest);

The client is setting up an additional session, creating a temporary queue and then adding a consumer for use in a request/reply scenario.  The last line results in the exception below occasionally.

Thanks for any insights.
Steve



WARNING: !0: javax.jms.JMSException: java.util.ConcurrentModificationException
WARNING: !0: 	at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
WARNING: !0: 	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1295)
WARNING: !0: 	at org.apache.activemq.ActiveMQSession.syncSendPacket(ActiveMQSession.java:1874)
WARNING: !0: 	at org.apache.activemq.ActiveMQMessageConsumer.(ActiveMQMessageConsumer.java:254)
WARNING: !0: 	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:1116)
WARNING: !0: 	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:1060)
WARNING: !0: 	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:973)
WARNING: !0: 	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:946)
WARNING: !0: 	at com.lgc.prowess.sitemanager.client.SiteManagerCommander.createResponseQueue(SiteManagerCommander.java:87)
WARNING: !0: 	at com.lgc.prowess.sitemanager.client.SiteManagerCommander.getNetDir(SiteManagerCommander.java:253)
WARNING: !0: 	at com.lgc.prowess.sitemanager.client.NetDirManager.(NetDirManager.java:26)
WARNING: !0: 	at com.lgc.prowess.sitemanager.client.SiteManagerClient.getNetDirManager(SiteManagerClient.java:325)
WARNING: !0: 	at com.lgc.prowess.sitemanager.netdir.NetDir.(NetDir.java:90)
WARNING: !0: 	at com.lgc.prowess.sitemanager.netdir.NetDir.get(NetDir.java:60)
WARNING: !0: 	at com.lgc.prowess.seisdata.PromaxDatasetFactory.open(PromaxDatasetFactory.java:52)
WARNING: !0: 	at com.lgc.prowess.seisdata.PromaxDatasetFactory.open(PromaxDatasetFactory.java:67)
WARNING: !0: 	at com.lgc.prowess.seisdata.SeismicDatasetFactory.open(SeismicDatasetFactory.java:118)
WARNING: !0: 	at com.lgc.prowess.seisdata.SeisUtil.openDataset(SeisUtil.java:161)
WARNING: !0: 	at com.lgc.prowess.tool.input.SmartInputTool.openDataset(SmartInputTool.java:857)
WARNING: !0: 	at com.lgc.prowess.tool.input.SmartInputTool.initCapsules(SmartInputTool.java:224)
WARNING: !0: 	at com.lgc.prowess.exec.ExecThread.(ExecThread.java:648)
WARNING: !0: 	at com.lgc.prowess.exec.ExecWorkerBase.initExecThread(ExecWorkerBase.java:339)
WARNING: !0: 	at com.lgc.prowess.exec.ExecWorkerBase.doInitPhase(ExecWorkerBase.java:125)
WARNING: !0: 	at com.lgc.prowess.exec.ExecMPIWorker.doInitPhase(ExecMPIWorker.java:231)
WARNING: !0: 	at com.lgc.prowess.exec.ExecMPIWorker.doWork(ExecMPIWorker.java:112)
WARNING: !0: 	at com.lgc.prowess.exec.ExecMPI.main(ExecMPI.java:37)
WARNING: !0: Caused by: java.util.ConcurrentModificationException
WARNING: !0: 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
WARNING: !0: 	at java.util.HashMap$EntryIterator.next(HashMap.java:834)
WARNING: !0: 	at java.util.HashMap$EntryIterator.next(HashMap.java:832)
WARNING: !0: 	at java.util.HashMap.putAllForCreate(HashMap.java:435)
WARNING: !0: 	at java.util.HashMap.(HashMap.java:225)
WARNING: !0: 	at org.slf4j.helpers.BasicMDCAdapter.getCopyOfContextMap(BasicMDCAdapter.java:130)
WARNING: !0: 	at org.slf4j.MDC.getCopyOfContextMap(MDC.java:176)
WARNING: !0: 	at org.apache.activemq.util.MDCHelper.getCopyOfContextMap(MDCHelper.java:30)
WARNING: !0: 	at org.apache.activemq.thread.PooledTaskRunner.(PooledTaskRunner.java:42)
WARNING: !0: 	at org.apache.activemq.thread.TaskRunnerFactory.createTaskRunner(TaskRunnerFactory.java:80)
WARNING: !0: 	at org.apache.activemq.broker.region.Topic.(Topic.java:89)
WARNING: !0: 	at org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:99)
WARNING: !0: 	at org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:473)
WARNING: !0: 	at org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:123)
WARNING: !0: 	at org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:301)
WARNING: !0: 	at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
WARNING: !0: 	at org.apache.activemq.advisory.AdvisoryBroker.addDestination(AdvisoryBroker.java:145)
WARNING: !0: 	at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
WARNING: !0: 	at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
WARNING: !0: 	at org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:151)
WARNING: !0: 	at org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:502)
WARNING: !0: 	at org.apache.activemq.advisory.AdvisoryBroker.fireAdvisory(AdvisoryBroker.java:515)
WARNING: !0: 	at org.apache.activemq.advisory.AdvisoryBroker.fireConsumerAdvisory(AdvisoryBroker.java:464)
WARNING: !0: 	at org.apache.activemq.advisory.AdvisoryBroker.fireConsumerAdvisory(AdvisoryBroker.java:450)
WARNING: !0: 	at org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:85)
WARNING: !0: 	at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
WARNING: !0: 	at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
WARNING: !0: 	at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:95)
WARNING: !0: 	at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:546)
WARNING: !0: 	at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:349)
WARNING: !0: 	at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:306)
WARNING: !0: 	at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:179)
WARNING: !0: 	at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
WARNING: !0: 	at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
WARNING: !0: 	at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:227)
WARNING: !0: 	at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
WARNING: !0: 	at org.apache.activemq.transport.nio.NIOTransport.serviceRead(NIOTransport.java:129)
WARNING: !0: 	at org.apache.activemq.transport.nio.NIOTransport.access$000(NIOTransport.java:44)
WARNING: !0: 	at org.apache.activemq.transport.nio.NIOTransport$1.onSelect(NIOTransport.java:68)
WARNING: !0: 	at org.apache.activemq.transport.nio.SelectorSelection.onSelect(SelectorSelection.java:94)
WARNING: !0: 	at org.apache.activemq.transport.nio.SelectorWorker$1.run(SelectorWorker.java:119)
WARNING: !0: 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
WARNING: !0: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
WARNING: !0: 	at java.lang.Thread.run(Thread.java:619)

----------------------------------------------------------------------
This e-mail, including any attached files, may contain confidential and privileged information for the sole use of the intended recipient.  Any review, use, distribution, or disclosure by others is strictly prohibited.  If you are not the intended recipient (or authorized to receive information for the intended recipient), please contact the sender by reply e-mail and delete all copies of this message.