"...yet they all fail (in the sense that they all receive the original
START incoming payload. Can anyone explain how this is expected behavior?"

All or just A and C receive the same message. I'd expect A and C to receive
the same message but not for B and D to (unless you don't change the
message in A and C.

The pipelines should all receive the same messages that is available
between the  multicast.  Is that the behavior you are seeing?  The results
of the first pipeline are not propagated to the second pipeline.  I'm not
sure what the underlying mechanics are without cracking open the source
code but it is as if the multicast is cloning the message it receives and
sending the clone to each of the pipelines.

"In any case I don't understand how the multicast could leak into a
vararg pipeline(...).
"

How is it leaking?  Each pipeline specified between the multicast tags is
intended to receive exactly the same exchange as the others without
mutation of the content based on the results of any of the others.

Remember, the multicast is designed so that it can parallel process all the
routes specified at the beginning of each pipeline. The only way it could
do that is if it were sending the same message to all of them.

Again, what exactly, are you trying to do with the processing.

On Fri, Oct 28, 2016 at 4:40 PM, Edoardo Causarano <
edoardo.causar...@gmail.com> wrote:

> Hi Brad,
>
> yes that's the definition of multicast but the documentation also suggests
> that pipelines are supposed to be implicitly derived from a vararg to(...)
> statement.
>
> In any case I don't understand how the multicast could leak into a vararg
> pipeline(...). It really feels like a bug to me, but I know little enough
> of Camel to assume there's probably a good reason (in which case I'm happy
> to understand it's logic)
>

Reply via email to