summaryrefslogtreecommitdiff
path: root/java/broker/src
diff options
context:
space:
mode:
authorRupert Smith <rupertlssmith@apache.org>2007-09-18 13:43:05 +0000
committerRupert Smith <rupertlssmith@apache.org>2007-09-18 13:43:05 +0000
commitd2789bc5956428f6d15c2624882d3d3a8d43d550 (patch)
treeb8f627bfb31d14e427af9a6a0f85dfa565b8265c /java/broker/src
parentf31871f480ea6e6eada710683bc88d205780ac3f (diff)
downloadqpid-python-d2789bc5956428f6d15c2624882d3d3a8d43d550.tar.gz
QPID-572 patches applied.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2.0.0.0_patch@576914 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker/src')
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java8
1 files changed, 7 insertions, 1 deletions
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 907d68b733..026761a618 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
@@ -747,7 +747,7 @@ public class ConcurrentSelectorDeliveryManager implements DeliveryManager
{
Subscription s = _subscriptions.nextSubscriber(msg);
- if (s == null) //no-one can take the message right now.
+ if (s == null || (!s.filtersMessages() && hasQueuedMessages())) //no-one can take the message right now or we're queueing
{
if (debugEnabled)
{
@@ -795,6 +795,12 @@ public class ConcurrentSelectorDeliveryManager implements DeliveryManager
}
else
{
+
+ if (_messages.size() > 0)
+ {
+ _log.error("Direct delivery with queued msgs:" + _messages.size());
+ }
+
//release lock now
_lock.unlock();
synchronized (s.getSendLock())