From 8ac57ee1cd50fcc3d02b36bea4ab1335924f1d7a Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <yannick.lecaillez@forgerock.com>
Date: Mon, 18 May 2015 13:52:40 +0000
Subject: [PATCH] OPENDJ-1864: Ordering matching rules should reuse equality indexes where possible
---
opendj-server-legacy/src/test/java/org/opends/server/backends/jeb/TestVerifyJob.java | 27 ++++++++++++++++-----------
1 files changed, 16 insertions(+), 11 deletions(-)
diff --git a/opendj-server-legacy/src/test/java/org/opends/server/backends/jeb/TestVerifyJob.java b/opendj-server-legacy/src/test/java/org/opends/server/backends/jeb/TestVerifyJob.java
index 606a5f7..d99525a 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/backends/jeb/TestVerifyJob.java
+++ b/opendj-server-legacy/src/test/java/org/opends/server/backends/jeb/TestVerifyJob.java
@@ -26,6 +26,7 @@
*/
package org.opends.server.backends.jeb;
+import static org.opends.server.schema.SchemaConstants.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -54,6 +55,12 @@
@SuppressWarnings("javadoc")
public class TestVerifyJob extends JebTestCase
{
+
+ private static final String EQUALITY_CASE_IGNORE = EMR_CASE_IGNORE_NAME;
+ private static final String EQUALITY_TELEPHONE = EMR_TELEPHONE_NAME;
+ private static final String ORDERING_CASE_IGNORE = OMR_CASE_IGNORE_NAME;
+ private static final String SUBSTRING_CASE_IGNORE_IA5 = SMR_CASE_IGNORE_IA5_NAME;
+
/** Root suffix for verify backend. */
private static String suffix="dc=verify,dc=jeb";
private static String vBranch="ou=verify tests," + suffix;
@@ -344,7 +351,7 @@
try
{
AttributeType attributeType = DirectoryServer.getAttributeType(phoneType);
- Index index = eContainer.getAttributeIndex(attributeType).getEqualityIndex();
+ Index index = eContainer.getAttributeIndex(attributeType).getIndex(EQUALITY_TELEPHONE);
//Add entry with bad JEB format Version
addID2EntryReturnKey(junkDN, 4, true);
//Add phone number with various bad id list entryIDs
@@ -636,10 +643,12 @@
DirectoryServer.getAttributeType(mailType);
//Get db handles to each index.
AttributeIndex attributeIndex = eContainer.getAttributeIndex(attributeType);
- Index eqIndex = attributeIndex.getEqualityIndex();
- Index presIndex = attributeIndex.getPresenceIndex();
- Index subIndex = attributeIndex.getSubstringIndex();
- Index ordIndex = attributeIndex.getOrderingIndex();
+ Index eqIndex = attributeIndex.getIndex(EQUALITY_CASE_IGNORE);
+ Index presIndex = attributeIndex.getIndex("presence");
+ Index subIndex = attributeIndex.getIndex(SUBSTRING_CASE_IGNORE_IA5 + ":6");
+ // Ordering is processed by equality since OPENDJ-1864
+ assertNull(attributeIndex.getIndex(ORDERING_CASE_IGNORE));
+
//Add invalid idlist ids to both equality and ordering indexes.
DatabaseEntry key=
new DatabaseEntry(StaticUtils.getBytes("user.0@example.com"));
@@ -650,15 +659,11 @@
DatabaseEntry data= new DatabaseEntry(dataBytes);
OperationStatus status = eqIndex.put(txn, key, data);
assertEquals(status, OperationStatus.SUCCESS);
- status = ordIndex.put(txn, key, data);
- assertEquals(status, OperationStatus.SUCCESS);
- //Add null idlist to both equality and ordering indexes.
+ //Add null idlist to equality index.
key = new DatabaseEntry(StaticUtils.getBytes("user.1@example.com"));
data= new DatabaseEntry(new EntryIDSet().toDatabase());
status = eqIndex.put(txn, key, data);
assertEquals(status, OperationStatus.SUCCESS);
- status = ordIndex.put(txn, key, data);
- assertEquals(status, OperationStatus.SUCCESS);
//Add invalid idlist ids to presence index.
key = new DatabaseEntry(StaticUtils.getBytes("+"));
data = new DatabaseEntry(dataBytes);
@@ -669,7 +674,7 @@
data = new DatabaseEntry(dataBytes);
status = subIndex.put(txn, key, data);
assertEquals(status, OperationStatus.SUCCESS);
- performBECompleteVerify(mailType, 6);
+ performBECompleteVerify(mailType, 5);
}
finally
{
--
Gitblit v1.10.0