code: @Override
    public void close() {
      if (isClosed())
        return;
  
      objects2Records.clear();
      records2Objects.clear();
      rid2Records.clear();
  
      checkOpeness();
      rollback();
  
      getMetadata().close();
      ((ODatabaseRaw) ((ODatabaseRecord) underlying.getUnderlying()).getUnderlying()).callOnCloseListeners();
      getLevel1Cache().clear();
  
      ownerPool.release(this);
      ownerPool = null;
    }
docs: Avoid to close it but rather release itself to the owner pool.