Claus Ibsen created CAMEL-5572:
----------------------------------
Summary: Graceful cancel running tasks in mutlicast/recipient list
when parallel mode and timeout enabled, and timeout was hit
Key: CAMEL-5572
URL: https://issues.apache.org/jira/browse/CAMEL-5572
Project: Camel
Issue Type: Improvement
Components: camel-core
Affects Versions: 2.10.0
Reporter: Claus Ibsen
Assignee: Claus Ibsen
Fix For: Future
See nabble
http://camel.465427.n5.nabble.com/recipientList-with-parallelProcessing-how-to-stop-thread-s-tp5718552.html
We should look into improving how to graceful cancel/interrupt existing running
tasks, when a timeout was triggered.
Interrupting a thread may produce interrupt exceptions, and cause error
handling to trigger, and also log nasty logs with stacktraces. So we have to
find a gentle way to stop processing existing tasks.
One way is to mark the exchange to stop continuing routing, so the routing
engine wont advance processing. This is a gentle way.
And notice we can only do this for currently running threads, if the async
routing engine kicked in, then the task can only be cancelled upon
re-activation.
Likewise we may add an option to control a window period where we try to
graceful stop running tasks, and if not all tasks stopped, then be more
aggressively afterwards.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira