public void close() throws IOException {
    List<IOException> ioes = new ArrayList<>();
    // these fields could be null if the WALFactory is created only for being used in the
    // getInstance method.
    if (metaProvider != null) {
      try {
        metaProvider.close();
      } catch (IOException e) {
        ioes.add(e);
      }
    }
    if (replicationProvider != null) {
      try {
        replicationProvider.close();
      } catch (IOException e) {
        ioes.add(e);
      }
    }
    if (provider != null) {
      try {
        provider.close();
      } catch (IOException e) {
        ioes.add(e);
      }
    }
    if (!ioes.isEmpty()) {
      IOException ioe = new IOException("Failed to close WALFactory");
      for (IOException e : ioes) {
        ioe.addSuppressed(e);
      }
      throw ioe;
    }
  }
Shutdown all WALs and clean up any underlying storage. Use only when you will not need to
replay and edits that have gone to any wals from this factory.
hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALFactory.java