summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2012-02-01 11:53:55 +0000
committerRobert Godfrey <rgodfrey@apache.org>2012-02-01 11:53:55 +0000
commitaa267066cd66693d994b0a823fa977f0d4f6fe63 (patch)
tree0b4afce9ee3831e5012b8807637603f5a95ea563 /java
parent6c80aafda9ac7e7347c8bfb9ff56a301e6806ba2 (diff)
downloadqpid-python-aa267066cd66693d994b0a823fa977f0d4f6fe63.tar.gz
QPID-3780 : guard against the possibility that the HWM is older than the queue head
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1239094 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/queue/SimpleQueueEntryList.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleQueueEntryList.java b/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleQueueEntryList.java
index d74431aae7..e13600acb3 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleQueueEntryList.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleQueueEntryList.java
@@ -190,6 +190,14 @@ public class SimpleQueueEntryList implements QueueEntryList<SimpleQueueEntryImpl
scavenge();
}
}
+ else
+ {
+ SimpleQueueEntryImpl unscavengedHWM = _unscavengedHWM.get();
+ if(unscavengedHWM != null && unscavengedHWM.compareTo(next) < 0)
+ {
+ _unscavengedHWM.compareAndSet(unscavengedHWM, null);
+ }
+ }
}
public int getPriorities()