From 325b2ee4a27d0c24aa0a539f7bd0a8cf24905ff7 Mon Sep 17 00:00:00 2001
From: boli <boli@localhost>
Date: Tue, 10 Apr 2007 20:41:27 +0000
Subject: [PATCH] Added the following capabilities to OpenDS: - Index rebuilding capabilities. All indexes including system and attribute indexes can  be rebuilt. Each index will be rebuilt by a seperate thread to increase performance. A  max number of rebuild threads could be set to limit the resources used by large rebuild  jobs. Partial rebuilds of attribute indexes could also be done by specifying the  attribute index type after the attribute type (ie. sn.approximate). - Index rebuilding standalone tool. Rebuilding of attribute indexes could be done with  the backend online. However, rebuilds including system indexes must be done with the  backend offline. - Index rebuilding task. Rebuilding of attribute indexes are done with the backend  online. Rebuilds that include system indexes will be performed after bring the backend  offline. The user must have index-rebuild privilages to rebuild indexes. - Approxitae indexing capability. The value of the attribute will be normalized using  the approximate maching rule of that attribute type. This is used as the key for the  index. Approximate indexes are fully supported by the index verify, rebuild, and import  jobs. - Fixed bug in build.xml where weave is enabled even if a test.* property is set. - Consolidated some common tool messages. - Consolidated some JE backend methods common to all tools. - Added unit tests for rebuild job and approximate indexes.

---
 opends/src/server/org/opends/server/backends/jeb/IndexConfig.java |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/backends/jeb/IndexConfig.java b/opends/src/server/org/opends/server/backends/jeb/IndexConfig.java
index 9e465f1..0dae599 100644
--- a/opends/src/server/org/opends/server/backends/jeb/IndexConfig.java
+++ b/opends/src/server/org/opends/server/backends/jeb/IndexConfig.java
@@ -61,6 +61,11 @@
   private boolean isOrdering = false;
 
   /**
+   * Indicates whether this index is configured for attribute approximate.
+   */
+  private boolean isApproximate = false;
+
+  /**
    * The index entry limit for the attribute equality database.
    */
   private int equalityEntryLimit = 4000;
@@ -177,6 +182,24 @@
   }
 
   /**
+   * Determine if this index is configured for attribute approximating.
+   * @return true if the index is configured for attribute approximating.
+   */
+  public boolean isApproximateIndex()
+  {
+    return isApproximate;
+  }
+
+  /**
+   * Configures this index for attribute approximating.
+   * @param isApproximate Sets attribute approximate indexing if true.
+   */
+  public void setApproximateIndex(boolean isApproximate)
+  {
+    this.isApproximate = isApproximate;
+  }
+
+  /**
    * Get the configured entry limit for attribute equality indexing.
    * @return The index entry limit, or 0 if there is no limit.
    */

--
Gitblit v1.10.0