[
https://issues.apache.org/jira/browse/CAMEL-17474?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17478555#comment-17478555
]
Jiri Ondrusek commented on CAMEL-17474:
---------------------------------------
I've found the origin of the problem. It is caused by the commit
[https://github.com/apache/camel/commit/961ad0e56e9331e71c386415ec67676e586ea629]
(I was able to debug different behavior here:
https://github.com/apache/camel/commit/961ad0e56e9331e71c386415ec67676e586ea629#diff-592328b1c35a306fa6ba3875f63b872de065e6d973ea89870d579bbab505cfadR214
)
[~davsclaus] From my POV it makes sense, that deadlock is happening. As you
can see route definition from the reproducer, multicast is calling twice the
same endpoint
{code:java}
from("direct:route2").routeId("r.route2")
.log(LoggingLevel.DEBUG, "Entering route: ${routeId}")
.multicast()
.to("log:r.test", "log:r.test")
.end(); {code}
*If those endpoint are different, deadlock is not happening.*
I'd say, that transaction behaves correctly. Transaction blocks access to the
same endpoints, which are used almost at the same time, which causes deadlock.
Error can be the fact, that it worked before 3.13.0
WDYT?
> camel-core: deadlock with multicast in a transacted context
> -----------------------------------------------------------
>
> Key: CAMEL-17474
> URL: https://issues.apache.org/jira/browse/CAMEL-17474
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 3.13.0, 3.14.0
> Reporter: Jeremy Ross
> Assignee: Jiri Ondrusek
> Priority: Major
>
> Using a multicast with more than one child in a transacted context causes a
> deadlock. Reproducer here
> https://github.com/jeremyross/camel-transacted-multicast.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)