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 | e8050421ca455801d511134ad520d5be779107e8 (patch) | |
| tree | 79a2b606be9f14f257a21fffdc4d6a4bfa89a698 /java/common | |
| parent | f6a10de289fe5e0f6790c362d9726d6b31c21ca0 (diff) | |
| download | qpid-python-e8050421ca455801d511134ad520d5be779107e8.tar.gz | |
fixed computation of ranged acks, fix needed for failing RecoverTest
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@620584 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/common')
| -rw-r--r-- | java/common/src/main/java/org/apache/qpidity/transport/Session.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/java/common/src/main/java/org/apache/qpidity/transport/Session.java b/java/common/src/main/java/org/apache/qpidity/transport/Session.java index 08adb99c47..9f0af7cfa1 100644 --- a/java/common/src/main/java/org/apache/qpidity/transport/Session.java +++ b/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() |
