diff options
| author | Rafael H. Schloming <rhs@apache.org> | 2008-02-11 19:21:01 +0000 |
|---|---|---|
| committer | Rafael H. Schloming <rhs@apache.org> | 2008-02-11 19:21:01 +0000 |
| commit | 2354c1c85cb237389cf5e8d7984237497a03ce8a (patch) | |
| tree | 18e9034bec0a692393e95f82cdc8d955d57488fa /qpid/java/common | |
| parent | f40cebd498651150e803a702197e67b1a6a38a03 (diff) | |
| download | qpid-python-2354c1c85cb237389cf5e8d7984237497a03ce8a.tar.gz | |
fixed computation of ranged acks, fix needed for failing RecoverTest
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@620584 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/common')
| -rw-r--r-- | qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java b/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java index 08adb99c47..9f0af7cfa1 100644 --- a/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java +++ b/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java @@ -63,6 +63,7 @@ public class Session extends Invoker private long commandsIn = 0; // completed incoming commands private final RangeSet processed = new RangeSet(); + private long processedMark = -1; private Range syncPoint = null; // outgoing command count @@ -132,25 +133,25 @@ public class Session extends Invoker public void flushProcessed() { - long mark = -1; boolean first = true; RangeSet rest = new RangeSet(); synchronized (processed) { for (Range r: processed) { - if (first) + if (first && r.includes(processedMark)) { - first = false; - mark = r.getUpper(); + processedMark = r.getUpper(); } else { rest.add(r); } + + first = false; } } - executionComplete(mark, rest); + executionComplete(processedMark, rest); } void syncPoint() |
