From a733cedcf54ab0b979f7f1b762d086e49bd59d72 Mon Sep 17 00:00:00 2001
From: gbellato <gbellato@localhost>
Date: Tue, 27 Oct 2009 09:34:04 +0000
Subject: [PATCH] Fix for issue 4316 : Replication takes too much time to shutdown

---
 opends/src/server/org/opends/server/replication/server/ServerReader.java |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/ServerReader.java b/opends/src/server/org/opends/server/replication/server/ServerReader.java
index 395b5a8..8121a0d 100644
--- a/opends/src/server/org/opends/server/replication/server/ServerReader.java
+++ b/opends/src/server/org/opends/server/replication/server/ServerReader.java
@@ -58,7 +58,6 @@
    * The tracer object for the debug logger.
    */
   private static final DebugTracer TRACER = getTracer();
-  private int serverId;
   private ProtocolSession session;
   private ServerHandler handler;
 
@@ -66,16 +65,14 @@
    * Constructor for the LDAP server reader part of the replicationServer.
    *
    * @param session The ProtocolSession from which to read the data.
-   * @param serverId The server ID of the server from which we read messages.
    * @param handler The server handler for this server reader.
    */
-  public ServerReader(ProtocolSession session, int serverId,
+  public ServerReader(ProtocolSession session,
       ServerHandler handler)
   {
     super("Replication Reader Thread for RS handler " +
         handler.getMonitorInstanceName());
     this.session = session;
-    this.serverId = serverId;
     this.handler = handler;
   }
 
@@ -302,9 +299,12 @@
       if (debugEnabled())
         TRACER.debugInfo(
             "In " + this.getName() + " " + stackTraceToSingleLineString(e));
-      errMessage = ERR_SERVER_BADLY_DISCONNECTED.get(handler.toString(),
-        Integer.toString(handler.getReplicationServerId()));
-      logError(errMessage);
+      if (!handler.shuttingDown())
+      {
+        errMessage = ERR_SERVER_BADLY_DISCONNECTED.get(handler.toString(),
+            Integer.toString(handler.getReplicationServerId()));
+        logError(errMessage);
+      }
     }
     catch (ClassNotFoundException e)
     {

--
Gitblit v1.10.0