From f0cfd61e5dceb847df25e72121bb6c6659906932 Mon Sep 17 00:00:00 2001 From: Martin Ritchie Date: Wed, 13 Dec 2006 13:27:47 +0000 Subject: Added comments about possible RejectedExecutionException that may occur when starting to process aSync deliveries as the broker closes its execution pools. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@486642 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/qpid/server/queue/ConcurrentDeliveryManager.java | 7 ++++++- .../org/apache/qpid/server/queue/SynchronizedDeliveryManager.java | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'java') diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentDeliveryManager.java b/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentDeliveryManager.java index dde76e5ba8..f9c8898182 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentDeliveryManager.java +++ b/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentDeliveryManager.java @@ -281,7 +281,12 @@ public class ConcurrentDeliveryManager implements DeliveryManager //are we already running? if so, don't re-run if (_processing.compareAndSet(false, true)) { - executor.execute(asyncDelivery); + // Do we need this? + // This executor is created via Executors in AsyncDeliveryConfig which only returns a TPE so cast is ok. + //if (executor != null && !((ThreadPoolExecutor) executor).isShutdown()) + { + executor.execute(asyncDelivery); + } } } } diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/SynchronizedDeliveryManager.java b/java/broker/src/main/java/org/apache/qpid/server/queue/SynchronizedDeliveryManager.java index d2e53717af..ea64952bc7 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/queue/SynchronizedDeliveryManager.java +++ b/java/broker/src/main/java/org/apache/qpid/server/queue/SynchronizedDeliveryManager.java @@ -206,7 +206,12 @@ class SynchronizedDeliveryManager implements DeliveryManager //are we already running? if so, don't re-run if (_processing.compareAndSet(false, true)) { - executor.execute(new Runner()); + // Do we need this? + // This executor is created via Executors in AsyncDeliveryConfig which only returns a TPE so cast is ok. + //if (executor != null && !((ThreadPoolExecutor) executor).isShutdown()) + { + executor.execute(new Runner()); + } } } } -- cgit v1.2.1