You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Willem Jiang (JIRA)" <ji...@apache.org> on 2013/01/11 04:30:16 UTC
[jira] [Assigned] (CAMEL-5950) Cache producer is not thread safe
[ https://issues.apache.org/jira/browse/CAMEL-5950?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Willem Jiang reassigned CAMEL-5950:
-----------------------------------
Assignee: Willem Jiang
> Cache producer is not thread safe
> ---------------------------------
>
> Key: CAMEL-5950
> URL: https://issues.apache.org/jira/browse/CAMEL-5950
> Project: Camel
> Issue Type: Bug
> Components: camel-cache
> Affects Versions: 2.10.3
> Reporter: Alexandre Gattiker
> Assignee: Willem Jiang
>
> {code}
> from("direct:causeFailure")
> .split().body().parallelProcessing()
> .setHeader(CacheConstants.CACHE_OPERATION, constant(CacheConstants.CACHE_OPERATION_DELETEALL))
> .to("cache://MyTestCache");
> {code}
> {code}
> String[] body = new String[] { "a", "b" };
> template.sendBody(body);
> {code}
> {noformat}
> net.sf.ehcache.ObjectExistsException: Cache MyTestCache already exists
> at net.sf.ehcache.CacheManager.addCacheNoCheck(CacheManager.java:1294)
> at net.sf.ehcache.CacheManager.addCache(CacheManager.java:1184)
> at org.apache.camel.component.cache.CacheEndpoint.initializeCache(CacheEndpoint.java:137)
> at org.apache.camel.component.cache.CacheProducer.process(CacheProducer.java:56)
> at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
> at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:122)
> at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:298)
> at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:117)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:334)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
> at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:334)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
> at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
> at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> at org.apache.camel.processor.MulticastProcessor.doProcessParallel(MulticastProcessor.java:709)
> at org.apache.camel.processor.MulticastProcessor.access$200(MulticastProcessor.java:80)
> at org.apache.camel.processor.MulticastProcessor$1.call(MulticastProcessor.java:290)
> at org.apache.camel.processor.MulticastProcessor$1.call(MulticastProcessor.java:275)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira