static void processCompactionLogs(String dir, String storeId, StoreKeyFactory storeKeyFactory, Time time,
      StoreConfig config, CompactionLogProcessor processor) throws IOException {
    // Ignore current in process compaction.
    List<File> sortedFiles = getCompactedLogFilesInDescendingOrder(dir, storeId);
    File inProgressCompactionLog = new File(dir, storeId + COMPACTION_LOG_SUFFIX);
    if (inProgressCompactionLog.exists()) {
      sortedFiles.add(0, inProgressCompactionLog); // If there is an in progress compaction log, put it in the front.
    }
    for (File file : sortedFiles) {
      if (!processor.process(new CompactionLog(file, storeKeyFactory, time, config))) {
        break;
      }
    }
  }
Process all the available {@link CompactionLog}s in descending order. The CompactionLog created most recently would
be processed first.
@param dir The data dir that contains all the compaction log files.
@param storeId The store id.
@param storeKeyFactory The {@link StoreKeyFactory}.
@param time The time instance.
@param config The {@link StoreConfig} object.
@param processor The {@link CompactionLogProcessor}.
@throws IOException
ambry-store/src/main/java/com/github/ambry/store/CompactionLog.java