From 05875933ae6929bc8e53f366ce116f2fc431fd46 Mon Sep 17 00:00:00 2001
From: boli <boli@localhost>
Date: Fri, 27 Jul 2007 21:06:35 +0000
Subject: [PATCH] These set of changes implement VLV and filter capability to OpenDS:
---
opends/src/server/org/opends/server/backends/jeb/ImportJob.java | 32 +++++++++++++++++++++++++++++++-
1 files changed, 31 insertions(+), 1 deletions(-)
diff --git a/opends/src/server/org/opends/server/backends/jeb/ImportJob.java b/opends/src/server/org/opends/server/backends/jeb/ImportJob.java
index b06c2c2..67cc08e 100644
--- a/opends/src/server/org/opends/server/backends/jeb/ImportJob.java
+++ b/opends/src/server/org/opends/server/backends/jeb/ImportJob.java
@@ -359,6 +359,9 @@
ArrayList<IndexMergeThread> mergers = new ArrayList<IndexMergeThread>();
+ ArrayList<VLVIndexMergeThread> vlvIndexMergeThreads =
+ new ArrayList<VLVIndexMergeThread>();
+
// Create merge threads for each base DN.
for (ImportContext importContext : importMap.values())
{
@@ -420,6 +423,14 @@
}
}
+ for(VLVIndex vlvIndex : entryContainer.getVLVIndexes())
+ {
+ VLVIndexMergeThread vlvIndexMergeThread =
+ new VLVIndexMergeThread(config, ldifImportConfig, vlvIndex);
+ vlvIndexMergeThread.setUncaughtExceptionHandler(this);
+ vlvIndexMergeThreads.add(vlvIndexMergeThread);
+ }
+
// Id2Children index.
Index id2Children = entryContainer.getID2Children();
IndexMergeThread indexMergeThread =
@@ -444,6 +455,10 @@
{
imt.start();
}
+ for (VLVIndexMergeThread imt : vlvIndexMergeThreads)
+ {
+ imt.start();
+ }
// Wait for the threads to finish.
for (IndexMergeThread imt : mergers)
@@ -460,6 +475,21 @@
}
}
}
+ // Wait for the threads to finish.
+ for (VLVIndexMergeThread imt : vlvIndexMergeThreads)
+ {
+ try
+ {
+ imt.join();
+ }
+ catch (InterruptedException e)
+ {
+ if (debugEnabled())
+ {
+ TRACER.debugCaught(DebugLogLevel.ERROR, e);
+ }
+ }
+ }
long mergeEndTime = System.currentTimeMillis();
@@ -977,7 +1007,7 @@
threads.remove(t);
int msgID = MSGID_JEB_IMPORT_THREAD_EXCEPTION;
String msg = getMessage(msgID, t.getName(),
- StaticUtils.stackTraceToSingleLineString(e));
+ StaticUtils.stackTraceToSingleLineString(e.getCause()));
logError(ErrorLogCategory.BACKEND, ErrorLogSeverity.SEVERE_ERROR, msg,
msgID);
}
--
Gitblit v1.10.0