Repository: camel Updated Branches: refs/heads/camel-2.13.x 02a8e9cd5 -> f0a11552a refs/heads/master d8d030165 -> 2ec2d44f3
CAMEL-7636: JMS request/reply onTimeout must catch exception to ensure entry is removed from timeout list otherwise could lead to endless retry attempts on next eviction runs. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f0a11552 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f0a11552 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f0a11552 Branch: refs/heads/camel-2.13.x Commit: f0a11552a901df1e35ed21aa5a84ee9cf74713c8 Parents: 02a8e9c Author: Claus Ibsen <davscl...@apache.org> Authored: Fri Jul 25 09:44:07 2014 +0200 Committer: Claus Ibsen <davscl...@apache.org> Committed: Fri Jul 25 17:04:36 2014 +0200 ---------------------------------------------------------------------- .../camel/component/jms/reply/CorrelationTimeoutMap.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/f0a11552/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/CorrelationTimeoutMap.java ---------------------------------------------------------------------- diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/CorrelationTimeoutMap.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/CorrelationTimeoutMap.java index 7b279d9..3d86be1 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/CorrelationTimeoutMap.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/CorrelationTimeoutMap.java @@ -50,7 +50,13 @@ public class CorrelationTimeoutMap extends DefaultTimeoutMap<String, ReplyHandle } // trigger timeout - value.onTimeout(key); + try { + value.onTimeout(key); + } catch (Throwable e) { + // must ignore so we ensure we evict the element + log.warn("Error processing onTimeout for correlationID: " + key + " due: " + e.getMessage() + ". This exception is ignored.", e); + } + // return true to remove the element log.trace("Evicted correlationID: {}", key); return true;