From f0a287fcba94440f81845a04fd0b6a4a70075a2c Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Mon, 19 Oct 2026 08:28:51 +0000
Subject: [PATCH] [#1195] Publish every change done while a recovery runs, and end the recovery only once they are out (#1204)
---
opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/LDAPUpdateMsg.java | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/LDAPUpdateMsg.java b/opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/LDAPUpdateMsg.java
index d2c30a5..c6a6585 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/LDAPUpdateMsg.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/LDAPUpdateMsg.java
@@ -13,6 +13,7 @@
*
* Copyright 2006-2009 Sun Microsystems, Inc.
* Portions Copyright 2011-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
*/
package org.opends.server.replication.protocol;
@@ -202,6 +203,20 @@
bytes = getBytes(ProtocolVersion.getCurrentVersion());
}
+ /**
+ * Has this message published as one no acknowledgement is waited for: it is no longer assured,
+ * and is encoded again. A recovery publishes the local changes it kept so, as it publishes the
+ * changes it rebuilds from the historical information: an operation which still waits for the
+ * acknowledgement of one gets none, and times out.
+ *
+ * This method is not synchronized and therefore not MT safe.
+ */
+ public void setNotAssured()
+ {
+ setAssured(false);
+ bytes = null;
+ }
+
/** {@inheritDoc} */
@Override
public ByteArrayBuilder encodeHeader(byte msgType, short protocolVersion)
--
Gitblit v1.10.0