From 0bd57577bb85119b2b4495c5ef525ba189d8d17c Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Wed, 04 Mar 2015 23:14:55 +0000
Subject: [PATCH] OPENDJ-1848: in-line and remove various storage related access methods from DatabaseContainer.

---
 opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VLVIndex.java |   50 ++++++++++++++++----------------------------------
 1 files changed, 16 insertions(+), 34 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VLVIndex.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VLVIndex.java
index 1a11e25..3ff4003 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VLVIndex.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VLVIndex.java
@@ -145,7 +145,7 @@
     catch(Exception e)
     {
       LocalizableMessage msg = ERR_JEB_CONFIG_VLV_INDEX_BAD_FILTER.get(
-          config.getFilter(), treeName, stackTraceToSingleLineString(e));
+          config.getFilter(), getName(), stackTraceToSingleLineString(e));
       throw new ConfigException(msg);
     }
 
@@ -190,7 +190,7 @@
       catch (Exception e)
       {
         throw new ConfigException(ERR_JEB_CONFIG_VLV_INDEX_UNDEFINED_ATTR.get(
-            sortKeys[i], treeName));
+            sortKeys[i], getName()));
       }
 
       AttributeType attrType = DirectoryServer.getAttributeType(sortAttrs[i]
@@ -198,7 +198,7 @@
       if (attrType == null)
       {
         LocalizableMessage msg = ERR_JEB_CONFIG_VLV_INDEX_UNDEFINED_ATTR.get(
-            sortAttrs[i], treeName);
+            sortAttrs[i], getName());
         throw new ConfigException(msg);
       }
       sortKeys[i] = new SortKey(attrType, ascending);
@@ -225,7 +225,7 @@
   {
     super.open(txn);
 
-    final Cursor cursor = txn.openCursor(treeName);
+    final Cursor cursor = txn.openCursor(getName());
     try
     {
       while (cursor.next())
@@ -408,7 +408,7 @@
 
   private SortValuesSet getSortValuesSet(ReadableStorage txn, ByteString key, boolean isRMW)
   {
-    ByteString value = isRMW ? txn.getRMW(treeName, key) : txn.read(treeName, key);
+    ByteString value = isRMW ? txn.getRMW(getName(), key) : txn.read(getName(), key);
     if (value == null)
     {
       // There are no records in the database
@@ -583,8 +583,8 @@
       if(newSize >= sortedSetCapacity)
       {
         SortValuesSet splitSortValuesSet = sortValuesSet.split(newSize / 2);
-        put(txn, splitSortValuesSet.getKeyBytes(), splitSortValuesSet.toByteString()); // splitAfter
-        put(txn, sortValuesSet.getKeyBytes(), sortValuesSet.toByteString()); // after
+        txn.create(getName(), splitSortValuesSet.getKeyBytes(), splitSortValuesSet.toByteString()); // splitAfter
+        txn.create(getName(), sortValuesSet.getKeyBytes(), sortValuesSet.toByteString()); // after
 
         if(logger.isTraceEnabled())
         {
@@ -597,12 +597,12 @@
       }
       else if(newSize == 0)
       {
-        delete(txn, key);
+        txn.delete(getName(), key);
       }
       else
       {
         ByteString after = sortValuesSet.toByteString();
-        put(txn, key, after);
+        txn.create(getName(), key, after);
       }
 
       count.getAndAdd(newSize - oldSize);
@@ -656,7 +656,7 @@
     {
       debugBuilder.append("vlv=");
       debugBuilder.append("[INDEX:");
-      debugBuilder.append(treeName.getIndexId());
+      debugBuilder.append(getName().getIndexId());
       debugBuilder.append("]");
     }
 
@@ -715,7 +715,7 @@
         int count = 1 + beforeCount + afterCount;
         selectedIDs = new long[count];
 
-        Cursor cursor = txn.openCursor(treeName);
+        Cursor cursor = txn.openCursor(getName());
         try
         {
           //Locate the set that contains the target entry.
@@ -769,7 +769,7 @@
         int includedAfterCount  = 0;
         LinkedList<EntryID> idList = new LinkedList<EntryID>();
 
-        Cursor cursor = openCursor(txn);
+        Cursor cursor = txn.openCursor(getName());
         try
         {
           ByteSequence vBytes = vlvRequest.getGreaterThanOrEqualAssertion();
@@ -884,7 +884,7 @@
       LinkedList<long[]> idSets = new LinkedList<long[]>();
       int currentCount = 0;
 
-      Cursor cursor = openCursor(txn);
+      Cursor cursor = txn.openCursor(getName());
       try
       {
         while (cursor.next())
@@ -1124,7 +1124,7 @@
     catch(Exception e)
     {
       LocalizableMessage msg = ERR_JEB_CONFIG_VLV_INDEX_BAD_FILTER.get(
-              cfg.getFilter(), treeName,
+              cfg.getFilter(), getName(),
               stackTraceToSingleLineString(e));
       unacceptableReasons.add(msg);
       return false;
@@ -1207,7 +1207,7 @@
       catch(Exception e)
       {
         ccr.addMessage(ERR_JEB_CONFIG_VLV_INDEX_BAD_FILTER.get(
-            config.getFilter(), treeName, stackTraceToSingleLineString(e)));
+            config.getFilter(), getName(), stackTraceToSingleLineString(e)));
         ccr.setResultCode(ResultCode.INVALID_ATTRIBUTE_SYNTAX);
       }
     }
@@ -1224,24 +1224,6 @@
         ccr.addMessage(e.getMessageObject());
         ccr.setResultCode(ResultCode.INVALID_ATTRIBUTE_SYNTAX);
       }
-
-      // We have to close the database and open it using the new comparator.
-      entryContainer.exclusiveLock.lock();
-      try
-      {
-        close();
-        open(txn);
-      }
-      catch (StorageRuntimeException de)
-      {
-        ccr.addMessage(LocalizableMessage.raw(StaticUtils.stackTraceToSingleLineString(de)));
-        ccr.setResultCodeIfSuccess(DirectoryServer.getServerErrorResultCode());
-      }
-      finally
-      {
-        entryContainer.exclusiveLock.unlock();
-      }
-
       ccr.setAdminActionRequired(true);
     }
 
@@ -1249,7 +1231,7 @@
     if (ccr.adminActionRequired())
     {
       trusted = false;
-      ccr.addMessage(NOTE_JEB_INDEX_ADD_REQUIRES_REBUILD.get(treeName));
+      ccr.addMessage(NOTE_JEB_INDEX_ADD_REQUIRES_REBUILD.get(getName()));
       try
       {
         state.putIndexTrustState(txn, this, false);

--
Gitblit v1.10.0