From 0a9135e3444bbefde6188f456b9c9772a816096d Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 18 Sep 2013 15:17:14 +0000
Subject: [PATCH] OPENDJ-1116 Introduce abstraction for the changelog DB

---
 opends/src/server/org/opends/server/replication/server/changelog/je/DraftCNData.java |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/changelog/je/DraftCNData.java b/opends/src/server/org/opends/server/replication/server/changelog/je/DraftCNData.java
index 77e2efd..c6faad5 100644
--- a/opends/src/server/org/opends/server/replication/server/changelog/je/DraftCNData.java
+++ b/opends/src/server/org/opends/server/replication/server/changelog/je/DraftCNData.java
@@ -33,6 +33,8 @@
 import org.opends.server.replication.common.CSN;
 import org.opends.server.replication.server.changelog.api.CNIndexRecord;
 import org.opends.server.replication.server.changelog.api.ChangelogException;
+import org.opends.server.types.DN;
+import org.opends.server.types.DirectoryException;
 
 import com.sleepycat.je.DatabaseEntry;
 
@@ -104,7 +106,8 @@
     {
       String stringData = new String(data, "UTF-8");
       String[] str = stringData.split(FIELD_SEPARATOR, 3);
-      return new CNIndexRecord(changeNumber, str[0], str[1], new CSN(str[2]));
+      final DN baseDN = DN.decode(str[1]);
+      return new CNIndexRecord(changeNumber, str[0], baseDN, new CSN(str[2]));
     }
     catch (UnsupportedEncodingException e)
     {
@@ -112,6 +115,10 @@
       // TODO: i18n
       throw new ChangelogException(Message.raw("need UTF-8 support"));
     }
+    catch (DirectoryException e)
+    {
+      throw new ChangelogException(e);
+    }
   }
 
   /**

--
Gitblit v1.10.0