[
https://issues.apache.org/jira/browse/CAMEL-11179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15978275#comment-15978275
]
Claus Ibsen commented on CAMEL-11179:
-------------------------------------
Its not a so good idea to use timeout (unless a high value) to give the system
amble time to suspend/shutdown correctly.
> MultiThread race condition in DefaultShutdownStrategy for suspend/resume
> ------------------------------------------------------------------------
>
> Key: CAMEL-11179
> URL: https://issues.apache.org/jira/browse/CAMEL-11179
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 2.18.3
> Reporter: Benjamin Graf
> Priority: Minor
>
> If call to suspend with timeout does timeout than two threads are invoking
> forced processing one for suspending and one for hard stopping. This causes
> the Consumer to be possibly left in a dead state.
> E.g. Jms consuming route:
> # Timeout occurs, ShutdownTask gets completed before main thread
> -> JmsConsumer gets stopped (listener gets destroyed), resume has no effect
> # Timeout occurs, ShutdownTask get completet after main thread
> -> JmsConsumer gets stopped first (listener gets destroyed) and get suspended
> second, resume sets Consumer to started but the listener is still destroyed!
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)