From 5737e93029831400707a407326dce51580e9d141 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 30 Aug 2013 12:29:54 +0000
Subject: [PATCH] OPENDJ-1116 Introduce abstraction for the changelog DB
---
opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/DbHandler.java | 12 +++---
opendj-sdk/opends/src/server/org/opends/server/replication/server/MessageHandler.java | 24 ++++++------
opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursor.java | 6 +-
opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicaDBCursor.java | 12 +++---
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/DbHandlerTest.java | 6 +-
opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursorComparator.java | 9 ++--
opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java | 12 +++---
opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationBackend.java | 4 +-
8 files changed, 42 insertions(+), 43 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/MessageHandler.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/MessageHandler.java
index b69eb3e..bf15f42 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/MessageHandler.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/MessageHandler.java
@@ -281,7 +281,7 @@
* restart as usual
* load this change on the delayList
*/
- NavigableSet<ReplicationDBCursor> sortedCursors = null;
+ NavigableSet<ReplicaDBCursor> sortedCursors = null;
try
{
sortedCursors = collectAllCursorsWithChanges();
@@ -395,7 +395,7 @@
}
private UpdateMsg nextOldestUpdateMsg(
- NavigableSet<ReplicationDBCursor> sortedCursors)
+ NavigableSet<ReplicaDBCursor> sortedCursors)
{
/*
* The cursors are sorted based on the currentChange of each cursor to
@@ -404,15 +404,15 @@
* it is necessary to remove and eventually add again a cursor (after moving
* it forward).
*/
- final ReplicationDBCursor cursor = sortedCursors.pollFirst();
+ final ReplicaDBCursor cursor = sortedCursors.pollFirst();
final UpdateMsg result = cursor.getChange();
cursor.next();
addCursorIfNotEmpty(sortedCursors, cursor);
return result;
}
- private void addCursorIfNotEmpty(Collection<ReplicationDBCursor> cursors,
- ReplicationDBCursor cursor)
+ private void addCursorIfNotEmpty(Collection<ReplicaDBCursor> cursors,
+ ReplicaDBCursor cursor)
{
if (cursor != null)
{
@@ -461,16 +461,16 @@
the lateQueue when it will send the next update but we are not yet
there. So let's take the last change not sent directly from the db.
*/
- result = findOldestChangeNumberFromReplicationDBs();
+ result = findOldestChangeNumberFromReplicaDBs();
}
}
}
return result;
}
- private ChangeNumber findOldestChangeNumberFromReplicationDBs()
+ private ChangeNumber findOldestChangeNumberFromReplicaDBs()
{
- SortedSet<ReplicationDBCursor> sortedCursors = null;
+ SortedSet<ReplicaDBCursor> sortedCursors = null;
try
{
sortedCursors = collectAllCursorsWithChanges();
@@ -488,16 +488,16 @@
}
/**
- * Collects all the replication DB cursors that have changes and sort them
+ * Collects all the {@link ReplicaDBCursor}s that have changes and sort them
* with the oldest {@link ChangeNumber} first.
*
* @return a List of cursors with changes sorted by their {@link ChangeNumber}
* (oldest first)
*/
- private NavigableSet<ReplicationDBCursor> collectAllCursorsWithChanges()
+ private NavigableSet<ReplicaDBCursor> collectAllCursorsWithChanges()
{
- final NavigableSet<ReplicationDBCursor> results =
- new TreeSet<ReplicationDBCursor>(new ReplicationDBCursorComparator());
+ final NavigableSet<ReplicaDBCursor> results =
+ new TreeSet<ReplicaDBCursor>(new ReplicaDBCursorComparator());
for (int serverId : replicationServerDomain.getServerIds())
{
// get the last already sent CN from that server to get a cursor
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationBackend.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationBackend.java
index 385a80d..fdd9f52 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationBackend.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationBackend.java
@@ -50,7 +50,7 @@
import org.opends.server.replication.plugin.MultimasterReplication;
import org.opends.server.replication.plugin.ReplicationServerListener;
import org.opends.server.replication.protocol.*;
-import org.opends.server.replication.server.changelog.api.ReplicationDBCursor;
+import org.opends.server.replication.server.changelog.api.ReplicaDBCursor;
import org.opends.server.types.*;
import org.opends.server.util.*;
@@ -631,7 +631,7 @@
return;
}
- ReplicationDBCursor cursor = rsd.getCursorFrom(serverId, previousCN);
+ ReplicaDBCursor cursor = rsd.getCursorFrom(serverId, previousCN);
if (cursor != null)
{
try
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
index 3b0b472..6723f21 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
@@ -47,7 +47,7 @@
import org.opends.server.replication.common.*;
import org.opends.server.replication.protocol.*;
import org.opends.server.replication.server.changelog.api.ChangelogException;
-import org.opends.server.replication.server.changelog.api.ReplicationDBCursor;
+import org.opends.server.replication.server.changelog.api.ReplicaDBCursor;
import org.opends.server.replication.server.changelog.je.DbHandler;
import org.opends.server.types.*;
@@ -1263,17 +1263,17 @@
/**
* Creates and returns a cursor. When the cursor is not used anymore, the
- * caller MUST call the {@link ReplicationDBCursor#close()} method to free the
+ * caller MUST call the {@link ReplicaDBCursor#close()} method to free the
* resources and locks used by the cursor.
*
* @param serverId
* Identifier of the server for which the cursor is created.
* @param startAfterCN
* Starting point for the cursor.
- * @return the created {@link ReplicationDBCursor}. Null when no DB is
+ * @return the created {@link ReplicaDBCursor}. Null when no DB is
* available or the DB is empty for the provided serverId .
*/
- public ReplicationDBCursor getCursorFrom(int serverId,
+ public ReplicaDBCursor getCursorFrom(int serverId,
ChangeNumber startAfterCN)
{
DbHandler dbHandler = sourceDbHandlers.get(serverId);
@@ -1282,7 +1282,7 @@
return null;
}
- ReplicationDBCursor cursor;
+ ReplicaDBCursor cursor;
try
{
cursor = dbHandler.generateCursorFrom(startAfterCN);
@@ -2680,7 +2680,7 @@
// to the Db and look for the change older than eligible CN (cn14)
if (eligibleCN.olderOrEqual(mostRecentDbCN)) {
// let's try to seek the first change <= eligibleCN
- ReplicationDBCursor cursor = null;
+ ReplicaDBCursor cursor = null;
try {
cursor = h.generateCursorFrom(eligibleCN);
if (cursor != null && cursor.getChange() != null) {
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDBCursor.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursor.java
similarity index 90%
rename from opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDBCursor.java
rename to opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursor.java
index 2e126da..d2dcfa0 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDBCursor.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursor.java
@@ -32,9 +32,9 @@
/**
* This cursor allows to iterate through the changes received from a given
- * LDAP Server Identifier.
+ * replica (Directory Server) in the topology.
*/
-public interface ReplicationDBCursor extends Closeable
+public interface ReplicaDBCursor extends Closeable
{
/**
@@ -45,7 +45,7 @@
UpdateMsg getChange();
/**
- * Go to the next change in the ReplicationDB or in the server Queue.
+ * Go to the next change in the ReplicaDB or in the server Queue.
*
* @return false if the cursor is already on the last change before this call.
*/
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDBCursorComparator.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursorComparator.java
similarity index 83%
rename from opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDBCursorComparator.java
rename to opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursorComparator.java
index a716210..8dc3d5f 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicationDBCursorComparator.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/api/ReplicaDBCursorComparator.java
@@ -33,14 +33,13 @@
/**
* This class defines a {@link Comparator} that allows to know which
- * {@link ReplicationDBCursor} contain the next {@link UpdateMsg} in the order
+ * {@link ReplicaDBCursor} contain the next {@link UpdateMsg} in the order
* defined by the {@link ChangeNumber} of the {@link UpdateMsg}.
*/
-public class ReplicationDBCursorComparator
- implements Comparator<ReplicationDBCursor>
+public class ReplicaDBCursorComparator implements Comparator<ReplicaDBCursor>
{
/**
- * Compare the {@link ChangeNumber} of the {@link ReplicationDBCursor}.
+ * Compare the {@link ChangeNumber} of the {@link ReplicaDBCursor}.
*
* @param o1
* first cursor.
@@ -49,7 +48,7 @@
* @return result of the comparison.
*/
@Override
- public int compare(ReplicationDBCursor o1, ReplicationDBCursor o2)
+ public int compare(ReplicaDBCursor o1, ReplicaDBCursor o2)
{
ChangeNumber csn1 = o1.getChange().getChangeNumber();
ChangeNumber csn2 = o2.getChange().getChangeNumber();
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/DbHandler.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/DbHandler.java
index ea2991b..298020d 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/DbHandler.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/DbHandler.java
@@ -43,7 +43,7 @@
import org.opends.server.replication.server.ReplicationServer;
import org.opends.server.replication.server.ReplicationServerDomain;
import org.opends.server.replication.server.changelog.api.ChangelogException;
-import org.opends.server.replication.server.changelog.api.ReplicationDBCursor;
+import org.opends.server.replication.server.changelog.api.ReplicaDBCursor;
import org.opends.server.replication.server.changelog.je.ReplicationDB.*;
import org.opends.server.types.Attribute;
import org.opends.server.types.Attributes;
@@ -59,7 +59,7 @@
* server in the topology.
* It is responsible for efficiently saving the updates that is received from
* each master server into stable storage.
- * This class is also able to generate a {@link ReplicationDBCursor} that can be
+ * This class is also able to generate a {@link ReplicaDBCursor} that can be
* used to read all changes from a given {@link ChangeNumber}.
*
* This class publish some monitoring information below cn=monitor.
@@ -260,26 +260,26 @@
}
/**
- * Generate a new {@link ReplicationDBCursor} that allows to browse the db
+ * Generate a new {@link ReplicaDBCursor} that allows to browse the db
* managed by this dbHandler and starting at the position defined by a given
* changeNumber.
*
* @param startAfterCN
* The position where the cursor must start.
- * @return a new {@link ReplicationDBCursor} that allows to browse the db
+ * @return a new {@link ReplicaDBCursor} that allows to browse the db
* managed by this dbHandler and starting at the position defined by a
* given changeNumber.
* @throws ChangelogException
* if a database problem happened.
*/
- public ReplicationDBCursor generateCursorFrom(ChangeNumber startAfterCN)
+ public ReplicaDBCursor generateCursorFrom(ChangeNumber startAfterCN)
throws ChangelogException
{
if (startAfterCN == null)
{
flush();
}
- return new JEReplicationDBCursor(db, startAfterCN, this);
+ return new JEReplicaDBCursor(db, startAfterCN, this);
}
/**
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicationDBCursor.java b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicaDBCursor.java
similarity index 91%
rename from opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicationDBCursor.java
rename to opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicaDBCursor.java
index 7f2c7af..5552ab2 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicationDBCursor.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/server/changelog/je/JEReplicaDBCursor.java
@@ -31,13 +31,13 @@
import org.opends.server.replication.common.ChangeNumber;
import org.opends.server.replication.protocol.UpdateMsg;
import org.opends.server.replication.server.changelog.api.ChangelogException;
-import org.opends.server.replication.server.changelog.api.ReplicationDBCursor;
+import org.opends.server.replication.server.changelog.api.ReplicaDBCursor;
import org.opends.server.replication.server.changelog.je.ReplicationDB.*;
/**
- * Berkeley DB JE implementation of {@link ReplicationDBCursor}.
+ * Berkeley DB JE implementation of {@link ReplicaDBCursor}.
*/
-public class JEReplicationDBCursor implements ReplicationDBCursor
+public class JEReplicaDBCursor implements ReplicaDBCursor
{
private UpdateMsg currentChange = null;
private ReplServerDBCursor cursor = null;
@@ -46,8 +46,8 @@
private ChangeNumber lastNonNullCurrentCN;
/**
- * Creates a new JEReplicationDBCursor. All created cursor must be released by
- * the caller using the {@link #close()} method.
+ * Creates a new {@link JEReplicaDBCursor}. All created cursor must be
+ * released by the caller using the {@link #close()} method.
*
* @param db
* The db where the cursor must be created.
@@ -58,7 +58,7 @@
* @throws ChangelogException
* if a database problem happened.
*/
- public JEReplicationDBCursor(ReplicationDB db, ChangeNumber startAfterCN,
+ public JEReplicaDBCursor(ReplicationDB db, ChangeNumber startAfterCN,
DbHandler dbHandler) throws ChangelogException
{
this.db = db;
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/DbHandlerTest.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/DbHandlerTest.java
index 8e408f5..b7643d1 100644
--- a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/DbHandlerTest.java
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/changelog/je/DbHandlerTest.java
@@ -40,7 +40,7 @@
import org.opends.server.replication.protocol.DeleteMsg;
import org.opends.server.replication.server.ReplServerFakeConfiguration;
import org.opends.server.replication.server.ReplicationServer;
-import org.opends.server.replication.server.changelog.api.ReplicationDBCursor;
+import org.opends.server.replication.server.changelog.api.ReplicaDBCursor;
import org.opends.server.util.StaticUtils;
import org.testng.annotations.Test;
@@ -196,7 +196,7 @@
return;
}
- ReplicationDBCursor cursor = handler.generateCursorFrom(changeNumbers[0]);
+ ReplicaDBCursor cursor = handler.generateCursorFrom(changeNumbers[0]);
try
{
for (int i = 1; i < changeNumbers.length; i++)
@@ -217,7 +217,7 @@
private void assertNotFound(DbHandler handler, ChangeNumber changeNumber)
{
- ReplicationDBCursor cursor = null;
+ ReplicaDBCursor cursor = null;
try
{
cursor = handler.generateCursorFrom(changeNumber);
--
Gitblit v1.10.0