camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <>
Subject Re: 2 Bugs in Splitter (Camel 2.5.0)?
Date Tue, 04 Jan 2011 13:28:56 GMT
On Tue, Jan 4, 2011 at 9:54 AM, rsteppac
<> wrote:
> Hello,
> I think there are two bugs in the Splitter component.
> Setting ‘streaming = "true"’ breaks error handling:
> If an exception is thrown in a processor, the exception in the subExchange
> is copied to the original exchange in MulticastProcessor line 554. In
> Splitter line 140 the original exchange is copied, including the exception
> that was thrown while processing the previous exchange. This prevents all
> subsequent exchanges from being processed successfully.

Can you try 2.6-SNAPSHOT as we have fixed some issues in relation to
error handling and splitter/multicast.

> Setting ‘streaming="true" parallelProcessing="true"’ consumes large amounts
> of heap space for big original messages. E.g. 1024m of heap is not enough to
> process an 80Mb with 500'000 lines, splitting it line by line.
> The problem seems to be the ArrayList in MulticastProcessor line 224. It
> contains a Future<Exchange> object for every token delivered by the
> java.util.Scanner. The list is only cleared (going out of scope) after all
> Future objects have been completed.

Hmm I was hoping that a Future instance would be a light weight object
in Java, but had my hopes to high :)

Back in the early days we did have some code using a
CompletionService. We most likely need to introduce this back and have
logic to aggregate the result as they fly in. Please create a ticket
for this issue.

> Maybe someone with more Camel experience than me (2 days so far) could
> verify this before I open JIRA tickets for these issues?
> Ralf
> --
> View this message in context:
> Sent from the Camel - Users mailing list archive at

Claus Ibsen
Twitter: davsclaus
Author of Camel in Action:

View raw message