From a3f218b56d16d995c63ab7eef13a84818c6f2be7 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Fri, 10 Jun 2011 14:34:10 +0000
Subject: [PATCH] Partial fix for OPENDJ-194: Minor improvements to change log content and configuration
---
opendj-sdk/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java | 44 ++++++++++++++++++++++++++++----------------
1 files changed, 28 insertions(+), 16 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java b/opendj-sdk/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java
index 4288497..16be10e 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/replication/protocol/TopologyMsg.java
@@ -167,16 +167,24 @@
nRead++;
}
- nAttrs = in[pos++];
- nRead = 0;
- /* Read attrs until expected number read */
- while ((nRead != nAttrs) && (pos < in.length))
+ if (version >= ProtocolVersion.REPLICATION_PROTOCOL_V5)
{
- length = getNextLength(in, pos);
- String attr = new String(in, pos, length, "UTF-8");
- delattrs.add(attr);
- pos += length + 1;
- nRead++;
+ nAttrs = in[pos++];
+ nRead = 0;
+ /* Read attrs until expected number read */
+ while ((nRead != nAttrs) && (pos < in.length))
+ {
+ length = getNextLength(in, pos);
+ String attr = new String(in, pos, length, "UTF-8");
+ delattrs.add(attr);
+ pos += length + 1;
+ nRead++;
+ }
+ }
+ else
+ {
+ // Default to using the same set of attributes for deletes.
+ delattrs.addAll(attrs);
}
/* Read Protocol version */
@@ -360,12 +368,15 @@
oStream.write(0);
}
- Set<String> delattrs = dsInfo.getEclIncludesForDeletes();
- oStream.write(delattrs.size());
- for (String attr : delattrs)
+ if (version >= ProtocolVersion.REPLICATION_PROTOCOL_V5)
{
- oStream.write(attr.getBytes("UTF-8"));
- oStream.write(0);
+ Set<String> delattrs = dsInfo.getEclIncludesForDeletes();
+ oStream.write(delattrs.size());
+ for (String attr : delattrs)
+ {
+ oStream.write(attr.getBytes("UTF-8"));
+ oStream.write(0);
+ }
}
oStream.write(dsInfo.getProtocolVersion());
@@ -403,10 +414,11 @@
}
return oStream.toByteArray();
- } catch (IOException e)
+ }
+ catch (IOException e)
{
// never happens
- return null;
+ throw new RuntimeException(e);
}
}
--
Gitblit v1.10.0