From 403f2977dffbdb72660538effbfdd6ea9473af3a Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 26 Aug 2013 13:51:36 +0000
Subject: [PATCH] Found problems in the replication ECL code. Also made the code more explicit.

---
 opends/src/server/org/opends/server/replication/server/ECLServerHandler.java |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/ECLServerHandler.java b/opends/src/server/org/opends/server/replication/server/ECLServerHandler.java
index 67b977c..387b190 100644
--- a/opends/src/server/org/opends/server/replication/server/ECLServerHandler.java
+++ b/opends/src/server/org/opends/server/replication/server/ECLServerHandler.java
@@ -565,7 +565,7 @@
   private String findCookie(final int startDraftCN) throws ChangelogException,
       DirectoryException
   {
-    ChangelogDB changelogDB = replicationServer.getChangelogDB();
+    final ChangelogDB changelogDB = replicationServer.getChangelogDB();
 
     if (startDraftCN <= 1)
     {
@@ -580,9 +580,10 @@
         return null;
       }
 
-      final int firstKey = changelogDB.getFirstKey();
-      String crossDomainStartState = changelogDB.getPreviousCookie(firstKey);
-      changelogDBIter = changelogDB.generateIterator(firstKey);
+      final int firstDraftCN = changelogDB.getFirstDraftCN();
+      final String crossDomainStartState =
+          changelogDB.getPreviousCookie(firstDraftCN);
+      changelogDBIter = changelogDB.generateIterator(firstDraftCN);
       return crossDomainStartState;
     }
 
@@ -633,7 +634,7 @@
         return null;
       }
 
-      final int lastKey = changelogDB.getLastKey();
+      final int lastKey = changelogDB.getLastDraftCN();
       crossDomainStartState = changelogDB.getPreviousCookie(lastKey);
       changelogDBIter = changelogDB.generateIterator(lastKey);
       return crossDomainStartState;

--
Gitblit v1.10.0