From e2eb3cd3fd864fe1f6335133c0f77b574ff35292 Mon Sep 17 00:00:00 2001 From: Martin Ritchie Date: Fri, 19 Oct 2007 15:01:15 +0000 Subject: QPID-647 : Update to ConcurrentSelectorDeliveryManager to restart async process if a msg is queued that has the potential to be delivered. Delayed the restart until the Filtering subscribers have the message enqueued to their PDQs. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2.1@586489 13f79535-47bb-0310-9956-ffa450edef68 --- .../server/queue/ConcurrentSelectorDeliveryManager.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'java') diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java b/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java index 71e50b178c..eabc8ebf38 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java +++ b/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java @@ -830,13 +830,6 @@ public class ConcurrentSelectorDeliveryManager implements DeliveryManager //release lock now message is on queue. _lock.unlock(); - //if we have a non-filtering subscriber but queued messages && we're not Async && we have other Active subs then something is wrong! - if ((s != null && hasQueuedMessages()) && !isProcessingAsync() && _subscriptions.hasActiveSubscribers()) - { - _queue.deliverAsync(); - } - - //Pre Deliver to all subscriptions if (debugEnabled) { @@ -868,6 +861,13 @@ public class ConcurrentSelectorDeliveryManager implements DeliveryManager sub.enqueueForPreDelivery(msg, deliverFirst); } } + + //if we have a non-filtering subscriber but queued messages && we're not Async && we have other Active subs then something is wrong! + if ((s != null && hasQueuedMessages()) && !isProcessingAsync() && _subscriptions.hasActiveSubscribers()) + { + _queue.deliverAsync(); + } + } } else -- cgit v1.2.1