From c6fdf4f19883a7705d908cf6d0de915886d04cd2 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Tue, 11 Oct 2011 11:17:06 +0000
Subject: [PATCH] Fix OPENDJ-310: Replicated changes to referral entries are not applied on replicas

---
 opends/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java b/opends/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
index 218ac68..5c5295f 100644
--- a/opends/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
+++ b/opends/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
@@ -83,6 +83,7 @@
 import org.opends.server.protocols.internal.InternalSearchListener;
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.protocols.ldap.LDAPAttribute;
+import org.opends.server.protocols.ldap.LDAPControl;
 import org.opends.server.protocols.ldap.LDAPFilter;
 import org.opends.server.protocols.ldap.LDAPModification;
 import org.opends.server.replication.common.AssuredMode;
@@ -2649,6 +2650,11 @@
           // Try replay the operation
           op.setInternalOperation(true);
           op.setSynchronizationOperation(true);
+
+          // Always add the ManageDSAIT control so that updates to referrals
+          // are processed locally.
+          op.addRequestControl(new LDAPControl(OID_MANAGE_DSAIT_CONTROL));
+
           changeNumber = OperationContext.getChangeNumber(op);
           ((AbstractOperation) op).run();
 

--
Gitblit v1.10.0