From 7d493004673ce0dda0559289fd2931a6342ceedb Mon Sep 17 00:00:00 2001
From: dugan <dugan@localhost>
Date: Fri, 09 Jan 2009 17:58:28 +0000
Subject: [PATCH] Allows import-ldif to load VLV indexes.
---
opends/src/server/org/opends/server/backends/jeb/importLDIF/WorkThread.java | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/opends/src/server/org/opends/server/backends/jeb/importLDIF/WorkThread.java b/opends/src/server/org/opends/server/backends/jeb/importLDIF/WorkThread.java
index fa1a238..8b8f16e 100644
--- a/opends/src/server/org/opends/server/backends/jeb/importLDIF/WorkThread.java
+++ b/opends/src/server/org/opends/server/backends/jeb/importLDIF/WorkThread.java
@@ -37,6 +37,7 @@
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.TimeUnit;
import java.util.*;
+import org.opends.server.util.*;
import com.sleepycat.je.*;
@@ -70,6 +71,7 @@
*/
private boolean stopRequested = false;
+ private Transaction txn = null;
//The substring buffer manager to use.
private BufferManager bufferMgr;
@@ -195,7 +197,7 @@
private void
processIndexesEntryDelete(WorkElement element, Entry existingEntry,
EntryID entryID)
- throws DatabaseException {
+ throws DatabaseException, DirectoryException, JebException {
DNContext context = element.getContext();
Map<AttributeType, AttributeIndex> attrIndexMap =
context.getAttrIndexMap();
@@ -221,9 +223,13 @@
delete(index, existingEntry, entryID);
}
}
+ for(VLVIndex vlvIdx : context.getEntryContainer().getVLVIndexes()) {
+ vlvIdx.removeEntry(txn, entryID, existingEntry);
+ }
}
}
+
/**
* Process all indexes using the specified entry ID.
*
@@ -233,7 +239,7 @@
*/
private void
processIndexesEntry(WorkElement element, EntryID entryID)
- throws DatabaseException {
+ throws DatabaseException, DirectoryException, JebException {
Entry entry = element.getEntry();
DNContext context = element.getContext();
LDIFImportConfig ldifImportConfig = context.getLDIFImportConfig();
@@ -267,6 +273,9 @@
if((index=attributeIndex.getApproximateIndex()) != null) {
insert(index, entry, entryID);
}
+ for(VLVIndex vlvIdx : context.getEntryContainer().getVLVIndexes()) {
+ vlvIdx.addEntry(txn, entryID, entry);
+ }
}
}
}
--
Gitblit v1.10.0