From ee3c80ab6cbfd702fe2252ce70e7e0ebc84ae332 Mon Sep 17 00:00:00 2001
From: fdorson <fdorson@localhost>
Date: Mon, 21 Jul 2008 06:29:59 +0000
Subject: [PATCH] issue #3317 : Removing replication links requires re-start of the server Enhancement of the last fix to take into account server name as well as IP address in the configuration of the ds-cfg-replication-server.
---
opends/src/server/org/opends/server/replication/server/ReplicationServer.java | 17 ++++++++++++++++-
opends/src/server/org/opends/server/replication/protocol/TLSSocketSession.java | 4 ++++
2 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/protocol/TLSSocketSession.java b/opends/src/server/org/opends/server/replication/protocol/TLSSocketSession.java
index 76d47e9..799a043 100644
--- a/opends/src/server/org/opends/server/replication/protocol/TLSSocketSession.java
+++ b/opends/src/server/org/opends/server/replication/protocol/TLSSocketSession.java
@@ -103,10 +103,14 @@
}
if (plainSocket != null && !plainSocket.isClosed())
{
+ plainInput.close();
+ plainOutput.close();
plainSocket.close();
}
if (secureSocket != null && !secureSocket.isClosed())
{
+ input.close();
+ output.close();
secureSocket.close();
}
}
diff --git a/opends/src/server/org/opends/server/replication/server/ReplicationServer.java b/opends/src/server/org/opends/server/replication/server/ReplicationServer.java
index 14de2c9..2115aa2 100644
--- a/opends/src/server/org/opends/server/replication/server/ReplicationServer.java
+++ b/opends/src/server/org/opends/server/replication/server/ReplicationServer.java
@@ -1043,7 +1043,22 @@
for (String server: replicationServers)
{
if (!newReplServers.contains(server))
- serversToDisconnect.add(server);
+ {
+ try
+ {
+ // translate the server name into IP address
+ // and keep the port number
+ String[] host = server.split(":");
+ serversToDisconnect.add(
+ (InetAddress.getByName(host[0])).getHostAddress()
+ + ":" + host[1]);
+ }
+ catch (IOException e)
+ {
+ Message message = ERR_COULD_NOT_SOLVE_HOSTNAME.get(server);
+ logError(message);
+ }
+ }
}
if (serversToDisconnect.isEmpty())
--
Gitblit v1.10.0