camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ashwin Karpe (JIRA)" <>
Subject [jira] [Updated] (CAMEL-3631) Graceful shutdown - Add logic to detect slow/hung in-flight exchanges
Date Sat, 26 Mar 2011 01:01:10 GMT


Ashwin Karpe updated CAMEL-3631:

    Attachment: Camel-3631.patch

Hi Claus & other committer colleagues,

I have added a patch for this particular issue based on the Nabble description and the CAMEL-3631
description for the issue above.

Can you please take a look and let me know what you think. 

I have done all the camel-core unit tests checkstyle checks and the code works fine pretty
well under concurrency and debug checks. I have also tried to be optimal since this is a high
touch segment of code.

I will add unit tests for DefaultEndpointInflightExchangeData shortly, but would like to see
whether this code satisfies the original intent in the issue.
Comments and thoughts appreciated...



> Graceful shutdown - Add logic to detect slow/hung in-flight exchanges
> ---------------------------------------------------------------------
>                 Key: CAMEL-3631
>                 URL:
>             Project: Camel
>          Issue Type: Improvement
>    Affects Versions: 2.6.0
>            Reporter: Claus Ibsen
>            Assignee: Ashwin Karpe
>             Fix For: 2.8.0
>         Attachments: Camel-3631.patch
> We should improved the graceful shutdown to be more verbose and provide more detailed
information when it appears in-flight exchange(s) appear to be hung.
> We have the created timestamp on the exchange, and if we let in flight repo, track each
exchange, then we can grab the exchange and thus know how long time it currently has been
in-flight. And then if the time is > threshold, we can output that in the logs.
> It requires the in flight registry now also keep track of each exchange. We may consider
this as an optional feature you should enable, as it requires us to put/remove Exchange into
a ConcurrentMap to keep track of each exchange.

This message is automatically generated by JIRA.
For more information on JIRA, see:

View raw message