mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Jean-Noel Rouvignac
20.23.2015 5d17d3fc157b4d05825d04050c1f80b0e3dbbbdc
Importer.java:
Renamed Importer to OnDiskMergeBufferImporter
Used the simple name "Importer" rather than the fully qualified name "org.opends.server.backends.pluggable.spi.Importer"
1 files renamed
4 files modified
70 ■■■■ changed files
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendImpl.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexInputBuffer.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java 7 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeBufferImporter.java 53 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Suffix.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendImpl.java
@@ -640,7 +640,7 @@
    try
    {
      if (Importer.mustClearBackend(importConfig, cfg))
      if (OnDiskMergeBufferImporter.mustClearBackend(importConfig, cfg))
      {
        try
        {
@@ -694,7 +694,7 @@
  private ImportStrategy getImportStrategy() throws DirectoryException
  {
    // TODO JNR may call new SuccessiveAddsImportStrategy() depending on configured import strategy
    return new Importer.StrategyImpl(cfg);
    return new OnDiskMergeBufferImporter.StrategyImpl(cfg);
  }
  /** {@inheritDoc} */
@@ -767,7 +767,7 @@
      {
        rootContainer = initializeRootContainer();
      }
      new Importer(rootContainer, rebuildConfig, cfg, serverContext).rebuildIndexes();
      new OnDiskMergeBufferImporter(rootContainer, rebuildConfig, cfg, serverContext).rebuildIndexes();
    }
    catch (ExecutionException execEx)
    {
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexInputBuffer.java
@@ -36,7 +36,7 @@
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ByteStringBuilder;
import org.opends.server.backends.pluggable.Importer.IndexManager;
import org.opends.server.backends.pluggable.OnDiskMergeBufferImporter.IndexManager;
/**
 * The buffer class is used to process a buffer from the temporary index files
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java
@@ -32,6 +32,7 @@
import java.io.ByteArrayOutputStream;
import org.forgerock.opendj.ldap.ByteSequence;
import org.opends.server.backends.pluggable.OnDiskMergeBufferImporter.IndexKey;
/**
 * This class represents a index buffer used to store the keys and entry IDs
@@ -92,7 +93,7 @@
   * Used to make sure that an instance of this class is put on the
   * correct scratch file writer work queue for processing.
   */
  private Importer.IndexKey indexKey;
  private IndexKey indexKey;
  /**
   * Set to {@code true} if the buffer should not be recycled. Used when the
@@ -568,7 +569,7 @@
   *
   * @param indexKey The index key.
   */
  public void setIndexKey(Importer.IndexKey indexKey)
  public void setIndexKey(IndexKey indexKey)
  {
    this.indexKey = indexKey;
  }
@@ -577,7 +578,7 @@
   * Return the index key of an index buffer.
   * @return The index buffer's index key.
   */
  public Importer.IndexKey getIndexKey()
  public IndexKey getIndexKey()
  {
    return indexKey;
  }
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeBufferImporter.java
File was renamed from opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Importer.java
@@ -103,6 +103,7 @@
import org.opends.server.backends.pluggable.AttributeIndex.MatchingRuleIndex;
import org.opends.server.backends.pluggable.ImportLDIFReader.EntryInformation;
import org.opends.server.backends.pluggable.spi.Cursor;
import org.opends.server.backends.pluggable.spi.Importer;
import org.opends.server.backends.pluggable.spi.ReadOperation;
import org.opends.server.backends.pluggable.spi.ReadableTransaction;
import org.opends.server.backends.pluggable.spi.Storage;
@@ -126,10 +127,10 @@
 * This class provides the engine that performs both importing of LDIF files and
 * the rebuilding of indexes.
 */
final class Importer
final class OnDiskMergeBufferImporter
{
  /**
   * Shim that allows properly constructing an {@link Importer} without polluting
   * Shim that allows properly constructing an {@link OnDiskMergeBufferImporter} without polluting
   * {@link ImportStrategy} and {@link RootContainer} with this importer inner workings.
   */
  @SuppressWarnings("javadoc")
@@ -148,7 +149,7 @@
    {
      try
      {
        return new Importer(rootContainer, importConfig, backendCfg, serverContext).processImport();
        return new OnDiskMergeBufferImporter(rootContainer, importConfig, backendCfg, serverContext).processImport();
      }
      catch (DirectoryException | InitializationException e)
      {
@@ -300,7 +301,7 @@
  private int phaseOneBufferCount;
  @SuppressWarnings("javadoc")
  Importer(RootContainer rootContainer, RebuildConfig rebuildConfig, PluggableBackendCfg cfg,
  OnDiskMergeBufferImporter(RootContainer rootContainer, RebuildConfig rebuildConfig, PluggableBackendCfg cfg,
      ServerContext serverContext) throws InitializationException, StorageRuntimeException, ConfigException
  {
    this.rootContainer = rootContainer;
@@ -319,7 +320,7 @@
  }
  @SuppressWarnings("javadoc")
  Importer(RootContainer rootContainer, LDIFImportConfig importCfg, PluggableBackendCfg backendCfg,
  OnDiskMergeBufferImporter(RootContainer rootContainer, LDIFImportConfig importCfg, PluggableBackendCfg backendCfg,
      ServerContext serverContext) throws InitializationException, ConfigException, StorageRuntimeException
  {
    this.rootContainer = rootContainer;
@@ -379,7 +380,7 @@
   * @param backendCfg
   *          the backend configuration object
   * @return true if the backend must be cleared, false otherwise
   * @see Importer#prepareSuffix(WriteableTransaction, EntryContainer) for per-suffix cleanups.
   * @see #prepareSuffix(WriteableTransaction, EntryContainer) for per-suffix cleanups.
   */
  static boolean mustClearBackend(LDIFImportConfig importCfg, PluggableBackendCfg backendCfg)
  {
@@ -1108,7 +1109,7 @@
    // Start DN processing first.
    Storage storage = rootContainer.getStorage();
    storage.close();
    try (final org.opends.server.backends.pluggable.spi.Importer importer = storage.startImport())
    try (final Importer importer = storage.startImport())
    {
      submitIndexDBWriteTasks(indexMgrList, importer, dbService, permits, buffers, readAheadSize);
    }
@@ -1120,8 +1121,7 @@
    shutdownAll(dbService);
  }
  private void submitIndexDBWriteTasks(List<IndexManager> indexMgrs,
      org.opends.server.backends.pluggable.spi.Importer importer,
  private void submitIndexDBWriteTasks(List<IndexManager> indexMgrs, Importer importer,
      ExecutorService dbService, Semaphore permits, int buffers, int readAheadSize) throws InterruptedException
  {
    List<IndexDBWriteTask> tasks = new ArrayList<>(indexMgrs.size());
@@ -1603,7 +1603,7 @@
   */
  private final class IndexDBWriteTask implements Callable<Void>
  {
    private final org.opends.server.backends.pluggable.spi.Importer importer;
    private final Importer importer;
    private final IndexManager indexMgr;
    private final int cacheSize;
    /** indexID => DNState map */
@@ -1636,8 +1636,7 @@
     * @param cacheSize
     *          The buffer cache size.
     */
    public IndexDBWriteTask(org.opends.server.backends.pluggable.spi.Importer importer, IndexManager indexMgr,
        Semaphore permits, int maxPermits, int cacheSize)
    public IndexDBWriteTask(Importer importer, IndexManager indexMgr, Semaphore permits, int maxPermits, int cacheSize)
    {
      this.importer = importer;
      this.indexMgr = indexMgr;
@@ -1719,7 +1718,7 @@
    }
    /** Finishes this task. */
    private void endWriteTask(org.opends.server.backends.pluggable.spi.Importer importer)
    private void endWriteTask(Importer importer)
    {
      isRunning = false;
@@ -1798,7 +1797,7 @@
      return null;
    }
    private void call0(org.opends.server.backends.pluggable.spi.Importer importer) throws Exception
    private void call0(Importer importer) throws Exception
    {
      if (isCanceled)
      {
@@ -1877,8 +1876,8 @@
      return new ImportIDSet(record.getKey(), newDefinedSet(), index.getIndexEntryLimit());
    }
    private void addToDB(org.opends.server.backends.pluggable.spi.Importer importer, int indexID, ImportIDSet insertSet,
        ImportIDSet deleteSet) throws DirectoryException
    private void addToDB(Importer importer, int indexID, ImportIDSet insertSet, ImportIDSet deleteSet)
        throws DirectoryException
    {
      keyCount.incrementAndGet();
      if (indexMgr.isDN2ID())
@@ -1900,8 +1899,7 @@
      }
    }
    private void addDN2ID(org.opends.server.backends.pluggable.spi.Importer importer, int indexID, ImportIDSet idSet)
        throws DirectoryException
    private void addDN2ID(Importer importer, int indexID, ImportIDSet idSet) throws DirectoryException
    {
      DNState dnState = dnStateMap.get(indexID);
      if (dnState == null)
@@ -1956,8 +1954,7 @@
      /** Why do we still need this if we are checking parents in the first phase? */
      @SuppressWarnings("javadoc")
      boolean checkParent(org.opends.server.backends.pluggable.spi.Importer importer, ImportIDSet idSet)
          throws StorageRuntimeException
      boolean checkParent(Importer importer, ImportIDSet idSet) throws StorageRuntimeException
      {
        entryID = idSet.iterator().next();
        parentDN = getParent(idSet.getKey());
@@ -2040,15 +2037,13 @@
        return importCfg != null && importCfg.appendToExistingData();
      }
      private EntryID get(org.opends.server.backends.pluggable.spi.Importer importer, TreeName dn2id, ByteSequence dn)
          throws StorageRuntimeException
      private EntryID get(Importer importer, TreeName dn2id, ByteSequence dn) throws StorageRuntimeException
      {
        ByteString value = importer.read(dn2id, dn);
        return value != null ? new EntryID(value) : null;
      }
      void writeToDN2ID(org.opends.server.backends.pluggable.spi.Importer importer, ByteSequence key)
          throws DirectoryException
      void writeToDN2ID(Importer importer, ByteSequence key) throws DirectoryException
      {
        importer.put(dn2id, key, entryID.toByteString());
        indexMgr.addTotDNCount(1);
@@ -2058,7 +2053,7 @@
        }
      }
      private void incrementChildrenCounter(org.opends.server.backends.pluggable.spi.Importer importer)
      private void incrementChildrenCounter(Importer importer)
      {
        final AtomicLong counter = getId2childrenCounter();
        counter.incrementAndGet();
@@ -2068,7 +2063,7 @@
        }
      }
      private void flush(org.opends.server.backends.pluggable.spi.Importer importer)
      private void flush(Importer importer)
      {
        for (Map.Entry<EntryID, AtomicLong> childrenCounter : id2childrenCountTree.entrySet())
        {
@@ -2080,7 +2075,7 @@
        id2childrenCountTree.clear();
      }
      void finalFlush(org.opends.server.backends.pluggable.spi.Importer importer)
      void finalFlush(Importer importer)
      {
        flush(importer);
@@ -2173,7 +2168,7 @@
          bufferIndexStream.writeLong(offset);
          bufferCount++;
          Importer.this.bufferCount.incrementAndGet();
          OnDiskMergeBufferImporter.this.bufferCount.incrementAndGet();
          if (poisonSeen)
          {
@@ -2808,7 +2803,7 @@
      }
    }
    /** @see Importer#importPhaseOne(WriteableTransaction) */
    /** @see #importPhaseOne(WriteableTransaction) */
    private void rebuildIndexesPhaseOne() throws StorageRuntimeException, InterruptedException,
        ExecutionException
    {
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Suffix.java
@@ -34,7 +34,7 @@
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.opends.server.backends.pluggable.AttributeIndex.MatchingRuleIndex;
import org.opends.server.backends.pluggable.Importer.DNCache;
import org.opends.server.backends.pluggable.OnDiskMergeBufferImporter.DNCache;
import org.opends.server.backends.pluggable.spi.ReadableTransaction;
import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
import org.opends.server.backends.pluggable.spi.WriteableTransaction;