[
https://issues.apache.org/jira/browse/CAMEL-19576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17740073#comment-17740073
]
Hubertus Willuhn commented on CAMEL-19576:
------------------------------------------
Ok this means, we have to upgrade to at least Camel 3.21 to fix that using the
option. However, the issue with documentation persists. From the document of
split or seda, there is no information about how this works in combination or
that this is affected by a "reactive" approach of Camel core.
Is there some kind of workaround, because upgrading is very hard for us,
because we have a very complex application structure and many dependencies?
> Undocumented Behavior of SEDA Consumer in Combination with Split
> ----------------------------------------------------------------
>
> Key: CAMEL-19576
> URL: https://issues.apache.org/jira/browse/CAMEL-19576
> Project: Camel
> Issue Type: Bug
> Components: camel-core, camel-seda
> Affects Versions: 3.4.6, 3.10.0, 3.15.0
> Reporter: Hubertus Willuhn
> Priority: Major
> Labels: split, thread
> Attachments: SedaThreadingTest.java
>
>
> We are using SEDA consumers in combination with split expression and thread
> pool for processing data. We did an upgrade from Camel 2 to Camel 3 and now
> encounter a critical change in behavior.
> *Which Camel Versions are affected?*
> We tested Camel 3.4.6 to 3.15.0.
> *Which Java Versions are affected*
> Java 8 (OpenJDK, Oracle) and Java 11 (OpenJDK)
> *What is the problem?*
> Before upgrading to Camel 3.x, we use routes consuming from seda endpoints,
> with a single thread, processing the exchanges. Within the same route, a
> split will be used with a custom thread-pool. The expected behavior is, that
> the seda thread blocks until the split is done, and will continue down the
> route to the end of the route, after the split end. However, this behavior
> changed with Camel 3.x, which breaks the routing logic for us, and does not
> match to the current documentation of "split" EIP.
> The "feature" which seems to be broken is the fact documented for split
> option "parallelProcessing" (in
> https://camel.apache.org/components/3.20.x/eips/split-eip.html#_options):
> _Note the caller thread will still wait until all messages has been fully
> processed, before it continues._
> I attached a test that should show what the issue is. We would expect that
> the test "testSedaThreads" succeeds.
> *The question is:*
> Are we doing something wrong, is documentation missing or not up to date, or
> is this an unwanted behavior?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)