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

Piotr Klimczak commented on CAMEL-16927:
----------------------------------------

Hi Claus,

Got the simplified test, finally no transactions, no async, just pure direct 
and proxies and it hangs forever.
But even then it requires very specific context to trigger it.

New need some more time now to put the test in camel project- hopefully 
tomorrow will create patch.
Sorry I have very limited time due to challenging situation at work and real 
life.

> Route deadlock in DefaultReactiveExecutor/Worker in transactional route which 
> calls Camel Proxy bean
> ----------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-16927
>                 URL: https://issues.apache.org/jira/browse/CAMEL-16927
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core-engine
>    Affects Versions: 3.7.5, 3.7.2
>            Reporter: Piotr Klimczak
>            Priority: Major
>             Fix For: 3.7.6
>
>
> 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