[ 
https://issues.apache.org/jira/browse/CAMEL-16927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17426344#comment-17426344
 ] 

Piotr Klimczak edited comment on CAMEL-16927 at 10/8/21, 7:14 PM:
------------------------------------------------------------------

Hi [~davsclaus],

Just noticed that Jira issue subject has been changed, while not fully correct.
 The problem does not happen when we use multiple context. The problem is that 
Spring creates multiple contexts for single real camel context.

Updated it to be closer to reality.
Hopefully you don't mind.

Cheers


was (Author: nannou9):
Hi [~davsclaus],

Just noticed that Jira issue subject has been changed, while not fully correct.
The problem does not happen when we use multiple context. The problem is that 
Spring creates multiple contexts for single real camel context.

Do you mind if I update it?

> camel-spring - Using Spring XML can create multiple SpringCamelContext 
> instances causing a deadlock when multiple camel proxies involved
> ----------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-16927
>                 URL: https://issues.apache.org/jira/browse/CAMEL-16927
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-spring
>    Affects Versions: 3.7.5, 3.7.2
>            Reporter: Piotr Klimczak
>            Priority: Major
>             Fix For: 3.7.6, 3.12.0
>
>
> My scenario:
>  # Http client -> Transactional servlet consumer
>  # Servlet route calls java bean
>  # Java bean calls another route using Camel Proxy and direct-vm
>  # CamelInvocationHandler calls direct-vm route and then hangs as route is 
> never executed, waiting for worker
> At this point it is all deadlocked and it never ends.
>  From what I can see the problem happens in DefaultReactiveExecutor.Worker.
> From debugging I can see there are two DefaultReactiveExecutor.Workers at the 
> point of deadlock.
> At point 3, Worker number 2 executes SimpleTask which waits for it to finish- 
> this task is to execute bean as per step 3.
>  Bean execution then attempts to trigger another route using Camel Proxy and 
> direct-vm and schedules it on Worker number 2.
> However immediately after scheduling on Worker number 2 the direct-vm 
> processor, Worker 1 executes executeFromQueue (triggered by countdownLatch 
> waiting for direct-vm call to finish) which then causes deadlock because task 
> added to Worker number 2 is never executed.
> I have confirmed above in debugging, will try to come up with simple test 
> case as our scenario is rather complex and involves multiple projects.
> Unfortunately for us this is blocker as our solution which was working 
> perfectly fine with camel 2 is not working.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to