Author: ningjiang Date: Tue Oct 16 14:25:59 2012 New Revision: 1398814 URL: http://svn.apache.org/viewvc?rev=1398814&view=rev Log: CAMEL-5704 Fixed the Split inside Split - Parallel processing issue
Added: camel/branches/camel-2.10.x/camel-core/src/test/java/org/apache/camel/component/file/FileSplitInSplitTest.java - copied unchanged from r1398810, camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileSplitInSplitTest.java Modified: camel/branches/camel-2.10.x/ (props changed) camel/branches/camel-2.10.x/camel-core/src/main/java/org/apache/camel/processor/MulticastProcessor.java Propchange: camel/branches/camel-2.10.x/ ------------------------------------------------------------------------------ Merged /camel/trunk:r1398810 Propchange: camel/branches/camel-2.10.x/ ------------------------------------------------------------------------------ Binary property 'svnmerge-integrated' - no diff available. Modified: camel/branches/camel-2.10.x/camel-core/src/main/java/org/apache/camel/processor/MulticastProcessor.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/camel-core/src/main/java/org/apache/camel/processor/MulticastProcessor.java?rev=1398814&r1=1398813&r2=1398814&view=diff ============================================================================== --- camel/branches/camel-2.10.x/camel-core/src/main/java/org/apache/camel/processor/MulticastProcessor.java (original) +++ camel/branches/camel-2.10.x/camel-core/src/main/java/org/apache/camel/processor/MulticastProcessor.java Tue Oct 16 14:25:59 2012 @@ -1002,6 +1002,10 @@ public class MulticastProcessor extends Map<Object, AggregationStrategy> map = CastUtils.cast(property); if (map == null) { map = new HashMap<Object, AggregationStrategy>(); + } else { + // it is not safe to use the map directly as the exchange doesn't have the deep copy of it's properties + // we just create a new copy if we need to change the map + map = new HashMap<Object, AggregationStrategy>(map); } // store the strategy using this processor as the key // (so we can store multiple strategies on the same exchange)