From 11d8ddb8f5c88b19fe3a6ea5e77384c43084003a Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 30 Apr 2014 14:25:10 +0000
Subject: [PATCH] Support suffixes containing space in the changelog state DB.
---
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnvTest.java | 5 ++---
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnv.java | 8 +++++---
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnv.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnv.java
index 3f0aa0c..e7d27d4 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnv.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnv.java
@@ -249,12 +249,13 @@
if (logger.isTraceEnabled())
{
- debug("read (key, value)=(" + stringKey + ", " + stringData + ")");
+ debug("read (key, data)=(" + stringKey + ", " + stringData + ")");
}
- final String[] str = stringData.split(FIELD_SEPARATOR, 3);
- if (str[0].equals(GENERATION_ID_TAG))
+ final String prefix = stringKey.split(FIELD_SEPARATOR)[0];
+ if (prefix.equals(GENERATION_ID_TAG))
{
+ final String[] str = stringData.split(FIELD_SEPARATOR, 3);
final long generationId = toLong(str[1]);
final DN baseDN = DN.valueOf(str[2]);
@@ -267,6 +268,7 @@
}
else
{
+ final String[] str = stringData.split(FIELD_SEPARATOR, 2);
final int serverId = toInt(str[0]);
final DN baseDN = DN.valueOf(str[1]);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnvTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnvTest.java
index abd7202..b051c68 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnvTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/ReplicationDbEnvTest.java
@@ -52,7 +52,7 @@
{
/**
- * Bypass heavyweight setup.
+ * Bypass heavyweight setup.
*/
private final class TestableReplicationDbEnv extends ReplicationDbEnv
{
@@ -93,8 +93,7 @@
return new Object[][] {
{ DN.valueOf("dc=example,dc=com"), 524157415, asList(42, 346) },
// test with a space in the baseDN (space is the field separator in the DB)
- // FIXME does not work yet (gosh!!)
- // { DN.decode("cn=admin data"), 524157415, asList(42, 346) },
+ { DN.valueOf("cn=admin data"), 524157415, asList(42, 346) },
};
}
--
Gitblit v1.10.0