From 48139cc36d9814f774293d31497bc722656f5955 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Fri, 17 Sep 2010 22:18:47 +0000
Subject: [PATCH] Fix bug where ECL Draft Compat / lastChangeNumber is erroneous when changes have the same time (in the same ms)
---
opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
index 848b5e6..01f79db 100644
--- a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
+++ b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
@@ -3453,13 +3453,13 @@
/**
* This methods count the changes, server by server :
- * - from a start time
+ * - from a start CN
* - to (inclusive) an end point (the provided endCN).
- * @param startTime The provided start time.
+ * @param startCN The provided start changeNumber.
* @param endCN The provided end change number.
* @return The number of changes between startTime and endCN.
*/
- public long getEligibleCount(long startTime, ChangeNumber endCN)
+ public long getEligibleCount(ChangeNumber startCN, ChangeNumber endCN)
{
long sidRes = 0;
long res = 0;
@@ -3471,8 +3471,9 @@
{
// process one sid
int sid = serverIDIterator.next();
- ChangeNumber startCN = new ChangeNumber(startTime, 0, sid);
- sidRes += getCount(sid, startCN, endCN);
+ ChangeNumber lStartCN =
+ new ChangeNumber(startCN.getTime(), startCN.getSeqnum(), sid);
+ sidRes += getCount(sid, lStartCN, endCN);
res+=sidRes;
}
return res;
--
Gitblit v1.10.0