From f83d3ded8fef86f979d40949b9470e41ed2a6ad9 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 20 Dec 2013 14:58:20 +0000
Subject: [PATCH] Fixed a NullPointerException in ReplicationServerDomain.getEligibleCSN(). Ensured ReplicationDomainDB.getDomainLastAliveCSNs() never returns null.
---
opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEChangelogDB.java | 10 ++++++----
opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDomainDB.java | 4 +---
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDomainDB.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDomainDB.java
index 5923eea..b09997d 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDomainDB.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDomainDB.java
@@ -76,9 +76,7 @@
*
* @param baseDN
* the replication domain baseDN
- * @return a new ServerState object holding the {serverId => CSN} Map. Can be
- * null if the config that computes change numbers is set to false or
- * if domain is not replicated.
+ * @return a non null new ServerState object holding the {serverId => CSN} Map
*/
ServerState getDomainLastAliveCSNs(DN baseDN);
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEChangelogDB.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEChangelogDB.java
index faf1536..0f588a2 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEChangelogDB.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEChangelogDB.java
@@ -540,7 +540,7 @@
return results.duplicate();
}
}
- return null;
+ return new ServerState();
}
/** {@inheritDoc} */
@@ -808,9 +808,11 @@
@Override
public void replicaOffline(DN baseDN, CSN offlineCSN)
{
- // TODO implement this when the changelogDB will be responsible for
- // maintaining the medium consistency point
- // TODO make sure that this operation will not lose changes
+ final ChangeNumberIndexer indexer = cnIndexer.get();
+ if (indexer != null)
+ {
+ indexer.replicaOffline(baseDN, offlineCSN);
+ }
// TODO save this state in the changelogStateDB?
}
}
--
Gitblit v1.10.0