private boolean closeRecoveredEditsWriter(RecoveredEditsWriter editsWriter,
    List<IOException> thrown) {
    try {
      editsWriter.writer.close();
    } catch (IOException ioe) {
      final String errorMsg = "Could not close recovered edits at " + editsWriter.path;
      LOG.error(errorMsg, ioe);
      updateStatusWithMsg(errorMsg);
      thrown.add(ioe);
      return false;
    }
    final String msg = "Closed recovered edits writer path=" + editsWriter.path + " (wrote "
      + editsWriter.editsWritten + " edits, skipped " + editsWriter.editsSkipped + " edits in "
      + (editsWriter.nanosSpent / 1000 / 1000) + " ms)";
    LOG.info(msg);
    updateStatusWithMsg(msg);
    return true;
  }
abortRecoveredEditsWriter closes the editsWriter, but does not rename and finalize the
recovered edits WAL files. Please see HBASE-28569.
hbase-server/src/main/java/org/apache/hadoop/hbase/wal/AbstractRecoveredEditsOutputSink.java