From 7b44fa6b33c5441b25e900fb906e280641ce3737 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 24 Apr 2015 09:14:28 +0000
Subject: [PATCH] (CR-6756) Fixed IllegalArgumentException when import triggers index entry limits

---
 opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/ImportIDSet.java |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/ImportIDSet.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/ImportIDSet.java
index f909237..cf942e4 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/ImportIDSet.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/ImportIDSet.java
@@ -28,6 +28,8 @@
 
 import java.nio.ByteBuffer;
 
+import org.forgerock.util.Reject;
+
 /**
  * This class manages the set of ID that are to be eventually added to an index
  * database. It is responsible for determining if the number of IDs is above
@@ -89,7 +91,7 @@
   }
 
   /** Set an import ID set to undefined. */
-  private void setUndefined() {
+  void setUndefined() {
     array = null;
     isDefined = false;
   }
@@ -109,13 +111,15 @@
    * @param entryID The long value to add to an import ID set.
    */
   void addEntryID(long entryID) {
+    Reject.ifTrue(entryID < 0, "entryID must always be positive");
+
     if(!isDefined()) {
       if(doCount)  {
         undefinedSize++;
       }
       return;
     }
-    if (entryID < 0 || (isDefined() && count + 1 > limit))
+    if (isDefined() && count + 1 > limit)
     {
       setUndefined();
       if(doCount)  {

--
Gitblit v1.10.0