@Override
  public void close() throws IOException {
    getWriteLock().lock();
    try {
      lockStorageWrite();
      try {
        if (!myClosed) {
          myClosed = true;
          doClose();
          if (IndexDebugProperties.IS_UNIT_TEST_MODE && LOG.isTraceEnabled()) {
            LOG.info("PersistentEnumeratorBase at " + myFile + " has been closed");
          }
        }
      }
      finally {
        unlockStorageWrite();
      }
    }
    finally {
      getWriteLock().unlock();
    }
  }
@Override
  public void close()