You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2012/09/06 11:52:07 UTC

[jira] [Created] (CAMEL-5572) Graceful cancel running tasks in mutlicast/recipient list when parallel mode and timeout enabled, and timeout was hit

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