From 4be49ece747335ca4775c6f6c36e530765ce62b6 Mon Sep 17 00:00:00 2001
From: pgamba <pgamba@localhost>
Date: Mon, 16 Jun 2008 12:18:45 +0000
Subject: [PATCH] Fix 3275 Start-up messages unaware of disabled replicated suffix's backend

---
 opendj-sdk/opends/src/server/org/opends/server/core/DirectoryServer.java                      |   11 +++++++++++
 opendj-sdk/opends/src/server/org/opends/server/replication/plugin/ReplicationBroker.java      |    1 +
 opendj-sdk/opends/src/messages/messages/replication.properties                                |    2 +-
 opendj-sdk/opends/src/server/org/opends/server/protocols/jmx/RmiConnector.java                |    3 ++-
 opendj-sdk/opends/src/server/org/opends/server/core/SynchronizationProviderConfigManager.java |    7 +++++++
 5 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/opendj-sdk/opends/src/messages/messages/replication.properties b/opendj-sdk/opends/src/messages/messages/replication.properties
index d0e6d76..fce45c0 100644
--- a/opendj-sdk/opends/src/messages/messages/replication.properties
+++ b/opendj-sdk/opends/src/messages/messages/replication.properties
@@ -198,7 +198,7 @@
 SEVERE_ERR_SEARCHING_GENERATION_ID_73=An unexpected error %s occurred when \
 searching for generation id for domain : %s
 SEVERE_ERR_SEARCHING_DOMAIN_BACKEND_74=An unexpected error occurred when \
-searching for the backend of the domain : %s
+looking for the replicated backend : %s. It may be not configured or disabled
 SEVERE_ERR_LOADING_GENERATION_ID_75=An unexpected error occurred when \
 searching in %s for the generation ID  : %s
 SEVERE_ERR_UPDATING_GENERATION_ID_76=An unexpected error %s occurred  \
diff --git a/opendj-sdk/opends/src/server/org/opends/server/core/DirectoryServer.java b/opendj-sdk/opends/src/server/org/opends/server/core/DirectoryServer.java
index 8002d69..efbf7f0 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/core/DirectoryServer.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/core/DirectoryServer.java
@@ -9572,6 +9572,17 @@
       Message message = ERR_DSCORE_CANNOT_START.get(ie.getMessage());
       shutDown(directoryServer.getClass().getName(), message);
     }
+    catch (ConfigException ce)
+    {
+      if (debugEnabled())
+      {
+        TRACER.debugCaught(DebugLogLevel.ERROR, ce);
+      }
+
+      Message message = ERR_DSCORE_CANNOT_START.get(ce.getMessage()
+          + " " + ce.getCause().getLocalizedMessage());
+      shutDown(directoryServer.getClass().getName(), message);
+    }
     catch (Exception e)
     {
       Message message = ERR_DSCORE_CANNOT_START.get(
diff --git a/opendj-sdk/opends/src/server/org/opends/server/core/SynchronizationProviderConfigManager.java b/opendj-sdk/opends/src/server/org/opends/server/core/SynchronizationProviderConfigManager.java
index 7963f65..4503640 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/core/SynchronizationProviderConfigManager.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/core/SynchronizationProviderConfigManager.java
@@ -403,6 +403,13 @@
       provider.initializeSynchronizationProvider(configuration);
     } catch (Exception e)
     {
+      try
+      {
+        provider.finalizeSynchronizationProvider();
+      }
+      catch(Exception ce)
+      {}
+
       // Handle the exception: put a message in the unacceptable reasons.
       Message message = ERR_CONFIG_SYNCH_ERROR_INITIALIZING_PROVIDER.get(
               String.valueOf(className), String.valueOf(configuration.dn()));
diff --git a/opendj-sdk/opends/src/server/org/opends/server/protocols/jmx/RmiConnector.java b/opendj-sdk/opends/src/server/org/opends/server/protocols/jmx/RmiConnector.java
index c4c539d..750b547 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/protocols/jmx/RmiConnector.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/protocols/jmx/RmiConnector.java
@@ -500,7 +500,8 @@
       // Close the socket
       try
       {
-        rmiSsf.close();
+        if (rmiSsf != null)
+          rmiSsf.close();
       }
       catch (IOException e)
       {
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/plugin/ReplicationBroker.java b/opendj-sdk/opends/src/server/org/opends/server/replication/plugin/ReplicationBroker.java
index 92088b3..fc03812 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/plugin/ReplicationBroker.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/plugin/ReplicationBroker.java
@@ -1018,6 +1018,7 @@
    */
   public void stop()
   {
+    stopHeartBeat();
     replicationServer = "stopped";
     shutdown = true;
     connected = false;

--
Gitblit v1.10.0