From 79e812a1ce0dc5e475a57a31c1a6ac2382c5b1a9 Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Wed, 28 Oct 2026 16:24:44 +0000
Subject: [PATCH] [#1241] Log the benign aborts of a replication handshake as warnings: the cross connection timeout (145) and a peer which went away (178, 179) (#1242)

---
 opendj-server-legacy/src/main/java/org/opends/server/replication/server/DataServerHandler.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/replication/server/DataServerHandler.java b/opendj-server-legacy/src/main/java/org/opends/server/replication/server/DataServerHandler.java
index 4e4bac6..3f554a2 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/replication/server/DataServerHandler.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/replication/server/DataServerHandler.java
@@ -40,6 +40,7 @@
 import org.opends.server.replication.common.StatusMachine;
 import org.opends.server.replication.common.StatusMachineEvent;
 import org.opends.server.replication.protocol.ChangeStatusMsg;
+import org.opends.server.replication.protocol.PacketTooLargeException;
 import org.opends.server.replication.protocol.ProtocolVersion;
 import org.opends.server.replication.protocol.ReplServerStartDSMsg;
 import org.opends.server.replication.protocol.ReplicationMsg;
@@ -465,11 +466,19 @@
 
         logStartSessionHandshake(inStartSessionMsg, outTopoMsg);
       }
+      catch (PacketTooLargeException e)
+      {
+        // Not the peer going away, see PacketTooLargeException.
+        logger.traceException(e);
+        abortStart(LocalizableMessage.raw(
+            e.getLocalizedMessage() + " Peer: " + session.getReadableRemoteAddress()));
+        return;
+      }
       catch(IOException e)
       {
-        LocalizableMessage errMessage = ERR_DS_DISCONNECTED_DURING_HANDSHAKE.get(
-            inServerStartMsg.getServerId(), replicationServer.getServerId());
-        throw new DirectoryException(ResultCode.OTHER, errMessage);
+        abortStartWithWarning(WARN_DS_DISCONNECTED_DURING_HANDSHAKE.get(
+            inServerStartMsg.getServerId(), replicationServer.getServerId()));
+        return;
       }
       catch (Exception e)
       {

--
Gitblit v1.10.0