From 90997a88f290bc77d77a7690d2adeadc3e91fdc1 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Mon, 07 Jan 2008 19:45:19 +0000
Subject: [PATCH] Fix issue 2462: NPE when changing index configuration while import ongoing

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

diff --git a/opends/src/server/org/opends/server/backends/jeb/EntryContainer.java b/opends/src/server/org/opends/server/backends/jeb/EntryContainer.java
index 75143ae..9bc6038 100644
--- a/opends/src/server/org/opends/server/backends/jeb/EntryContainer.java
+++ b/opends/src/server/org/opends/server/backends/jeb/EntryContainer.java
@@ -22,7 +22,7 @@
  * CDDL HEADER END
  *
  *
- *      Portions Copyright 2006-2007 Sun Microsystems, Inc.
+ *      Portions Copyright 2006-2008 Sun Microsystems, Inc.
  */
 package org.opends.server.backends.jeb;
 import org.opends.messages.Message;
@@ -551,11 +551,24 @@
   public void close()
       throws DatabaseException
   {
-    List<DatabaseContainer> databases = new ArrayList<DatabaseContainer>();
-    listDatabases(databases);
-    for(DatabaseContainer db : databases)
+    // Close core indexes.
+    dn2id.close();
+    id2entry.close();
+    dn2uri.close();
+    id2children.close();
+    id2subtree.close();
+    state.close();
+
+    // Close attribute indexes and deregister any listeners.
+    for (AttributeIndex index : attrIndexMap.values())
     {
-      db.close();
+      index.close();
+    }
+
+    // Close VLV indexes and deregister any listeners.
+    for (VLVIndex vlvIndex : vlvIndexMap.values())
+    {
+      vlvIndex.close();
     }
 
     config.removeLocalDBChangeListener(this);

--
Gitblit v1.10.0