From b0420c460bca595f5cf0cb779184a1f23108195a Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 14 Jan 2015 15:53:18 +0000
Subject: [PATCH] OPENDJ-1724 (CR-5789) Persistit: add support for verify-indexes
---
opendj3-server-dev/src/server/org/opends/server/backends/jeb/VerifyJob.java | 52 +++++++++++-----------------------------------------
1 files changed, 11 insertions(+), 41 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VerifyJob.java b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VerifyJob.java
index df6cd5e..1893262 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VerifyJob.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VerifyJob.java
@@ -39,6 +39,7 @@
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.schema.MatchingRule;
import org.forgerock.opendj.ldap.spi.IndexingOptions;
+import org.opends.server.backends.pluggable.VerifyConfig;
import org.opends.server.core.DirectoryServer;
import org.opends.server.types.*;
import org.opends.server.util.ServerConstants;
@@ -113,14 +114,12 @@
* Verify the backend.
*
* @param rootContainer The root container that holds the entries to verify.
- * @param statEntry Optional statistics entry.
* @return The error count.
* @throws DatabaseException If an error occurs in the JE database.
* @throws JebException If an error occurs in the JE backend.
* @throws DirectoryException If an error occurs while verifying the backend.
*/
- public long verifyBackend(RootContainer rootContainer, Entry statEntry) throws
- DatabaseException, JebException, DirectoryException
+ public long verifyBackend(RootContainer rootContainer) throws DatabaseException, JebException, DirectoryException
{
this.rootContainer = rootContainer;
EntryContainer entryContainer =
@@ -277,11 +276,9 @@
rate = 1000f*keyCount / totalTime;
}
- addStatEntry(statEntry, "verify-error-count", String.valueOf(errorCount));
- addStatEntry(statEntry, "verify-key-count", String.valueOf(keyCount));
if (cleanMode)
{
- logger.info(NOTE_JEB_VERIFY_CLEAN_FINAL_STATUS, keyCount, errorCount, totalTime/1000, rate);
+ logger.info(NOTE_JEB_VERIFY_CLEAN_FINAL_STATUS, keyCount, errorCount, totalTime / 1000, rate);
if (multiReferenceCount > 0)
{
@@ -291,27 +288,18 @@
averageEntryReferences = entryReferencesCount/keyCount;
}
- logger.debug(INFO_JEB_VERIFY_MULTIPLE_REFERENCE_COUNT, multiReferenceCount);
- addStatEntry(statEntry, "verify-multiple-reference-count",
- String.valueOf(multiReferenceCount));
-
- logger.debug(INFO_JEB_VERIFY_ENTRY_LIMIT_EXCEEDED_COUNT, entryLimitExceededCount);
- addStatEntry(statEntry, "verify-entry-limit-exceeded-count",
- String.valueOf(entryLimitExceededCount));
-
- logger.debug(INFO_JEB_VERIFY_AVERAGE_REFERENCE_COUNT, averageEntryReferences);
- addStatEntry(statEntry, "verify-average-reference-count",
- String.valueOf(averageEntryReferences));
-
- logger.debug(INFO_JEB_VERIFY_MAX_REFERENCE_COUNT, maxEntryPerValue);
- addStatEntry(statEntry, "verify-max-reference-count",
- String.valueOf(maxEntryPerValue));
+ if (logger.isDebugEnabled())
+ {
+ logger.debug(INFO_JEB_VERIFY_MULTIPLE_REFERENCE_COUNT, multiReferenceCount);
+ logger.debug(INFO_JEB_VERIFY_ENTRY_LIMIT_EXCEEDED_COUNT, entryLimitExceededCount);
+ logger.debug(INFO_JEB_VERIFY_AVERAGE_REFERENCE_COUNT, averageEntryReferences);
+ logger.debug(INFO_JEB_VERIFY_MAX_REFERENCE_COUNT, maxEntryPerValue);
+ }
}
}
else
{
logger.info(NOTE_JEB_VERIFY_FINAL_STATUS, keyCount, errorCount, totalTime/1000, rate);
- //TODO add entry-limit-stats to the statEntry
if (entryLimitMap.size() > 0)
{
logger.debug(INFO_JEB_VERIFY_ENTRY_LIMIT_STATS_HEADER);
@@ -359,13 +347,11 @@
{
DiskOrderedCursor cursor =
id2entry.openCursor(new DiskOrderedCursorConfig());
+ long storedEntryCount = id2entry.getRecordCount();
try
{
DatabaseEntry key = new DatabaseEntry();
DatabaseEntry data = new DatabaseEntry();
-
- Long storedEntryCount = id2entry.getRecordCount();
-
while (cursor.getNext(key, data, null) == OperationStatus.SUCCESS)
{
EntryID entryID;
@@ -1732,20 +1718,4 @@
previousTime = latestTime;
}
}
-
- /**
- * Adds an attribute of type t and value v to the statEntry, only if the
- * statEntry is not null.
- * @param statEntry passed in from backentryImpl.verifyBackend.
- * @param t String to be used as the attribute type.
- * @param v String to be used as the attribute value.
- */
- private void addStatEntry(Entry statEntry, String t, String v)
- {
- if (statEntry != null)
- {
- Attribute a = Attributes.create(t, v);
- statEntry.addAttribute(a, null);
- }
- }
}
--
Gitblit v1.10.0