From 74023634617762408423a44c8dd01ee050fef584 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Mon, 03 Jun 2013 09:13:08 +0000
Subject: [PATCH] Fix OPENDJ-866 Local RS is named differently to remote RS under cn=replication,cn=monitor
---
opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java | 21 ++++++++++++++++++++-
1 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java b/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java
index 132238e..16fbfc5 100644
--- a/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java
+++ b/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java
@@ -97,6 +97,19 @@
int dsId = Integer.valueOf(serverIdString);
pos += length + 1;
+ /* Read DS URL */
+ String dsUrl;
+ if (version >= ProtocolVersion.REPLICATION_PROTOCOL_V6)
+ {
+ length = getNextLength(in, pos);
+ dsUrl = new String(in, pos, length, "UTF-8");
+ pos += length + 1;
+ }
+ else
+ {
+ dsUrl = "";
+ }
+
/* Read RS id */
length =
getNextLength(in, pos);
@@ -187,7 +200,7 @@
/* Now create DSInfo and store it in list */
- DSInfo dsInfo = new DSInfo(dsId, rsId, generationId, status,
+ DSInfo dsInfo = new DSInfo(dsId, dsUrl, rsId, generationId, status,
assuredFlag, assuredMode, safeDataLevel, groupId, refUrls, attrs,
delattrs, protocolVersion);
dsList.add(dsInfo);
@@ -321,6 +334,12 @@
String.valueOf(dsInfo.getDsId()).getBytes("UTF-8");
oStream.write(byteServerId);
oStream.write(0);
+ if (version >= ProtocolVersion.REPLICATION_PROTOCOL_V6)
+ {
+ // Put DS URL
+ oStream.write(dsInfo.getDsUrl().getBytes("UTF-8"));
+ oStream.write(0);
+ }
// Put RS id
byteServerId =
String.valueOf(dsInfo.getRsId()).getBytes("UTF-8");
--
Gitblit v1.10.0