From d5e86cdd9e41cf63e147c4811cf292fa4e7b58b7 Mon Sep 17 00:00:00 2001
From: abobrov <abobrov@localhost>
Date: Tue, 18 Mar 2008 11:24:26 +0000
Subject: [PATCH] - make the entry cache preload backend implementation specific moving EntryCachePreloader to JEB package and reworking it for JEB specific preload.
---
opends/src/server/org/opends/server/backends/jeb/BackendImpl.java | 46 +++++-----------------------------------------
1 files changed, 5 insertions(+), 41 deletions(-)
diff --git a/opends/src/server/org/opends/server/backends/jeb/BackendImpl.java b/opends/src/server/org/opends/server/backends/jeb/BackendImpl.java
index e54ecd9..86c94fb 100644
--- a/opends/src/server/org/opends/server/backends/jeb/BackendImpl.java
+++ b/opends/src/server/org/opends/server/backends/jeb/BackendImpl.java
@@ -25,9 +25,6 @@
* Copyright 2007-2008 Sun Microsystems, Inc.
*/
package org.opends.server.backends.jeb;
-import com.sleepycat.je.Cursor;
-import com.sleepycat.je.CursorConfig;
-import com.sleepycat.je.DatabaseEntry;
import org.opends.messages.Message;
import java.io.IOException;
@@ -42,8 +39,6 @@
import com.sleepycat.je.DatabaseException;
import com.sleepycat.je.EnvironmentConfig;
-import com.sleepycat.je.LockMode;
-import com.sleepycat.je.OperationStatus;
import com.sleepycat.je.RunRecoveryException;
import org.opends.server.admin.std.meta.LocalDBIndexCfgDefn;
@@ -72,7 +67,6 @@
import org.opends.server.admin.std.server.LocalDBBackendCfg;
import org.opends.server.admin.Configuration;
import org.opends.server.admin.server.ConfigurationChangeListener;
-import org.opends.server.protocols.asn1.ASN1OctetString;
import org.opends.server.types.DN;
import org.opends.server.backends.jeb.importLDIF.Importer;
@@ -1752,41 +1746,11 @@
/**
* {@inheritDoc}
*/
- public boolean collectStoredDNs(Collection<DN> storedDNs)
- throws UnsupportedOperationException
+ public void preloadEntryCache() throws
+ UnsupportedOperationException
{
- for (EntryContainer entryContainer : rootContainer.getEntryContainers()) {
- DN2ID dn2id = entryContainer.getDN2ID();
- Cursor cursor = null;
- try {
- cursor = dn2id.openCursor(null, new CursorConfig());
- DatabaseEntry key = new DatabaseEntry();
- DatabaseEntry data = new DatabaseEntry();
- OperationStatus status;
- for (status = cursor.getFirst(key, data, LockMode.DEFAULT);
- status == OperationStatus.SUCCESS;
- status = cursor.getNext(key, data, LockMode.DEFAULT)) {
- DN entryDN = DN.decode(new ASN1OctetString(key.getData()));
- storedDNs.add(entryDN);
- }
- } catch (Exception e) {
- if (debugEnabled())
- {
- TRACER.debugCaught(DebugLogLevel.ERROR, e);
- }
- return false;
- } finally {
- if (cursor != null) {
- try {
- cursor.close();
- } catch (DatabaseException de) {
- if (debugEnabled()) {
- TRACER.debugCaught(DebugLogLevel.ERROR, de);
- }
- }
- }
- }
- }
- return true;
+ EntryCachePreloader preloader =
+ new EntryCachePreloader(this);
+ preloader.preload();
}
}
--
Gitblit v1.10.0