@Override
  public void close() {
    setCurrentDatabaseinThreadLocal();

    if (metadata != null) {
      metadata.close();
      metadata = null;
    }

    super.close();

    hooks.clear();
    dictionary = null;

    user = null;
    level1Cache.shutdown();
  }