diff options
| author | Martin Ritchie <ritchiem@apache.org> | 2007-09-12 15:01:43 +0000 |
|---|---|---|
| committer | Martin Ritchie <ritchiem@apache.org> | 2007-09-12 15:01:43 +0000 |
| commit | c9a48638e074b5c5db13ddd49dea03f0895baf5f (patch) | |
| tree | d0627722b7d87fcc19100bf5df209a2e3956b5ab /java/broker/src | |
| parent | 46b15e2c2f9e454fd7041f1e6ad723d093bee052 (diff) | |
| download | qpid-python-c9a48638e074b5c5db13ddd49dea03f0895baf5f.tar.gz | |
QPID-572 Applied test patch supplied by Aidan Skinner along with change to ConcurrentSelectorDeliveryManager that resolves the ordering problem.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@574982 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.java | 8 |
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 0639243e02..f3b8f0de35 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 || 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()) |
