From 9a741260c66309ff16f55b6a7b9933336db12ca6 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 16 Mar 2015 12:40:11 +0000
Subject: [PATCH] Hide IndexFilter.FILTER_CANDIDATE_THRESHOLD, use isBelowFilterThreshold() instead.
---
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexFilter.java | 9 ++++-----
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java | 12 +++++-------
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexQuery.java | 8 +++-----
3 files changed, 12 insertions(+), 17 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java
index 8b96d8f..d8c8117 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java
@@ -27,17 +27,16 @@
*/
package org.opends.server.backends.pluggable;
-import static org.forgerock.util.Utils.closeSilently;
import static org.forgerock.util.Reject.checkNotNull;
+import static org.forgerock.util.Utils.closeSilently;
import static org.opends.messages.JebMessages.*;
+import static org.opends.server.backends.pluggable.EntryIDSet.*;
+import static org.opends.server.backends.pluggable.IndexFilter.*;
import static org.opends.server.backends.pluggable.JebFormat.*;
import static org.opends.server.core.DirectoryServer.*;
import static org.opends.server.protocols.ldap.LDAPResultCode.*;
-import static org.opends.server.backends.pluggable.IndexFilter.CURSOR_ENTRY_LIMIT;
import static org.opends.server.types.AdditionalLogItem.*;
import static org.opends.server.util.StaticUtils.*;
-import static org.opends.server.backends.pluggable.EntryIDSet.newUndefinedSet;
-import static org.opends.server.backends.pluggable.EntryIDSet.newDefinedSet;
import java.util.ArrayList;
import java.util.Arrays;
@@ -906,10 +905,9 @@
// Evaluate the filter against the attribute indexes.
entryIDSet = indexFilter.evaluate();
- // Evaluate the search scope against the id2children and id2subtree indexes
- if (entryIDSet.size() > IndexFilter.FILTER_CANDIDATE_THRESHOLD)
+ if (!isBelowFilterThreshold(entryIDSet))
{
- // Read the ID from dn2id.
+ // Evaluate the search scope against the id2children and id2subtree indexes
EntryID baseID = dn2id.get(txn, aBaseDN);
if (baseID == null)
{
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexFilter.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexFilter.java
index 63a9fb6..148c305 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexFilter.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexFilter.java
@@ -26,9 +26,8 @@
*/
package org.opends.server.backends.pluggable;
-import static org.opends.messages.JebMessages.INFO_JEB_INDEX_FILTER_INDEX_TYPE_DISABLED;
-import static org.opends.server.backends.pluggable.EntryIDSet.newSetFromUnion;
-import static org.opends.server.backends.pluggable.EntryIDSet.newUndefinedSet;
+import static org.opends.messages.JebMessages.*;
+import static org.opends.server.backends.pluggable.EntryIDSet.*;
import java.util.ArrayList;
import java.util.HashMap;
@@ -51,7 +50,7 @@
* Stop processing the filter against the indexes when the
* number of candidates is smaller than this value.
*/
- static final int FILTER_CANDIDATE_THRESHOLD = 10;
+ private static final int FILTER_CANDIDATE_THRESHOLD = 10;
/**
* Limit on the number of entry IDs that may be retrieved by cursoring through an index.
@@ -285,7 +284,7 @@
return results;
}
- private boolean isBelowFilterThreshold(EntryIDSet set)
+ static boolean isBelowFilterThreshold(EntryIDSet set)
{
return set.isDefined() && set.size() <= FILTER_CANDIDATE_THRESHOLD;
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexQuery.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexQuery.java
index 42dd2bc..8d9a6ce 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexQuery.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexQuery.java
@@ -26,9 +26,8 @@
*/
package org.opends.server.backends.pluggable;
-import static org.opends.server.backends.pluggable.EntryIDSet.newUndefinedSet;
-import static org.opends.server.backends.pluggable.IndexFilter.CURSOR_ENTRY_LIMIT;
-import static org.opends.server.backends.pluggable.IndexFilter.FILTER_CANDIDATE_THRESHOLD;
+import static org.opends.server.backends.pluggable.EntryIDSet.*;
+import static org.opends.server.backends.pluggable.IndexFilter.*;
import java.util.Collection;
@@ -148,8 +147,7 @@
{
entryIDs.retainAll(query.evaluate(debugMessage));
}
- if (entryIDs.isDefined()
- && entryIDs.size() <= FILTER_CANDIDATE_THRESHOLD)
+ if (isBelowFilterThreshold(entryIDs))
{
break;
}
--
Gitblit v1.10.0