[
https://issues.apache.org/activemq/browse/CAMEL-2958?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-2958.
--------------------------------
Fix Version/s: 2.5.0
Resolution: Fixed
trunk: 965065.
Christian you are welcome to try out source from trunk to see if you have any
luck reproducing the issue on your system.
> java.util.ConcurrentModificationException in Method
> org.apache.camel.util.CaseInsensitiveMap.putAll()
> -----------------------------------------------------------------------------------------------------
>
> Key: CAMEL-2958
> URL: https://issues.apache.org/activemq/browse/CAMEL-2958
> Project: Apache Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 2.3.0
> Environment: Ubuntu Linux 10.04 i386
> Sun JDK 1.6.0_20-b02
> Glassfish 2.1
> Reporter: Christian Mouttet
> Assignee: Claus Ibsen
> Fix For: 2.5.0
>
> Attachments: CaseInsensitiveMap.java
>
>
> Every now and then I'm facing the ConcurrentModificationException. It very
> hard to reproduce. This is my stack trace:
> Failed delivery for exchangeId: ba969718-9044-4261-bc57-ca10aafb0a03.
> Exhausted after delivery attempt: 1 caught:
> java.util.ConcurrentModificationException
> java.util.ConcurrentModificationException: null
> at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
> [na:1.6.0_20]
> at java.util.HashMap$KeyIterator.next(HashMap.java:828) [na:1.6.0_20]
> at
> org.apache.camel.util.CaseInsensitiveMap.putAll(CaseInsensitiveMap.java:86)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.impl.MessageSupport.copyFrom(MessageSupport.java:142)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.impl.DefaultMessage.copyFrom(DefaultMessage.java:52)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.util.ExchangeHelper.copyResults(ExchangeHelper.java:199)
> [camel-core-2.3.0.jar:2.3.0]
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:114)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:51)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:97)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:185)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:151)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:89)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228)
> [camel-core-2.3.0.jar:2.3.0]
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:75)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:70)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
> [camel-core-2.3.0.jar:2.3.0]
> at
> org.apache.camel.component.http.CamelServlet.service(CamelServlet.java:71)
> [camel-http-2.3.0.jar:2.3.0]
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
> [javaee.jar:9.1]
> ...
> Looks like CaseInsensitiveMap isn't enough thread save. But I have no idea
> what other thread is modifies the map. Most of the time everything is ok.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.