From f70c357d82774ce2462755e5798e31f553e85610 Mon Sep 17 00:00:00 2001
From: pgamba <pgamba@localhost>
Date: Tue, 29 Sep 2009 08:32:17 +0000
Subject: [PATCH] #4250 Entry not replicated after initializations / not systematic

---
 opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java |   44 +++++++++++++++++++++++++-------------------
 1 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
index 11442a6..086c3e6 100644
--- a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
+++ b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
@@ -1835,20 +1835,23 @@
   {
     for (DataServerHandler handler : directoryServers.values())
     {
-      if ((notThisOne == null) || // All DSs requested
-        ((notThisOne != null) && (handler != notThisOne)))
-      // All except passed one
+      if (handler.getStatus() != ServerStatus.NOT_CONNECTED_STATUS)
       {
-        TopologyMsg topoMsg = createTopologyMsgForDS(handler.getServerId());
-        try
+        if ((notThisOne == null) || // All DSs requested
+          ((notThisOne != null) && (handler != notThisOne)))
+        // All except passed one
         {
-          handler.sendTopoInfo(topoMsg);
-        } catch (IOException e)
-        {
-          Message message = ERR_EXCEPTION_SENDING_TOPO_INFO.get(
+          TopologyMsg topoMsg = createTopologyMsgForDS(handler.getServerId());
+          try
+          {
+            handler.sendTopoInfo(topoMsg);
+          } catch (IOException e)
+          {
+            Message message = ERR_EXCEPTION_SENDING_TOPO_INFO.get(
             baseDn.toString(),
             "directory", Short.toString(handler.getServerId()), e.getMessage());
-          logError(message);
+            logError(message);
+          }
         }
       }
     }
@@ -1863,16 +1866,19 @@
     TopologyMsg topoMsg = createTopologyMsgForRS();
     for (ReplicationServerHandler handler : replicationServers.values())
     {
-      try
+      if (handler.getStatus() != ServerStatus.NOT_CONNECTED_STATUS)
       {
-        handler.sendTopoInfo(topoMsg);
-      } catch (IOException e)
-      {
-        Message message = ERR_EXCEPTION_SENDING_TOPO_INFO.get(
-          baseDn.toString(),
-          "replication", Short.toString(handler.getServerId()),
-          e.getMessage());
-        logError(message);
+        try
+        {
+          handler.sendTopoInfo(topoMsg);
+        } catch (IOException e)
+        {
+          Message message = ERR_EXCEPTION_SENDING_TOPO_INFO.get(
+            baseDn.toString(),
+            "replication", Short.toString(handler.getServerId()),
+            e.getMessage());
+          logError(message);
+        }
       }
     }
   }

--
Gitblit v1.10.0