public Map<String, String> summaryAsMap(boolean humanReadable) {
    Map<String, String> summary = new LinkedHashMap<>();
    put(summary, INPUT_DATA_FILES, rewriteDataFileCnt);
    put(summary, INPUT_DATA_SIZE, rewriteDataSize, humanReadable);
    put(summary, INPUT_DATA_RECORDS, rewriteDataRecordCnt);
    putIfPositive(
        summary,
        INPUT_READ_ONLY_DATA_FILES,
        Math.max(reRowDeletedDataFileCnt, rewritePosDataFileCnt));
    putIfPositive(summary, INPUT_READ_ONLY_DATA_SIZE, rewritePosDataSize, humanReadable);
    putIfPositive(summary, INPUT_READ_ONLY_DATA_RECORDS, rewritePosDataRecordCnt);
    putIfPositive(summary, INPUT_EQ_DELETE_FILES, eqDeleteFileCnt);
    putIfPositive(summary, INPUT_EQ_DELETE_SIZE, equalityDeleteSize, humanReadable);
    putIfPositive(summary, INPUT_EQ_DELETE_RECORDS, eqDeleteRecordCnt);
    putIfPositive(summary, INPUT_POS_DELETE_FILES, posDeleteFileCnt);
    putIfPositive(
        summary,
        INPUT_POS_DELETE_SIZE,
        Math.max(positionalDeleteSize, positionDeleteSize),
        humanReadable);
    putIfPositive(summary, INPUT_POS_DELETE_RECORDS, posDeleteRecordCnt);
    put(summary, OUTPUT_DATA_FILES, newDataFileCnt);
    put(summary, OUTPUT_DATA_SIZE, newDataSize, humanReadable);
    put(summary, OUTPUT_DATA_RECORDS, newDataRecordCnt);
    putIfPositive(summary, OUTPUT_DELETE_FILES, newDeleteFileCnt);
    putIfPositive(summary, OUTPUT_DELETE_SIZE, newDeleteSize, humanReadable);
    putIfPositive(summary, OUTPUT_DELETE_RECORDS, newDeleteRecordCnt);
    return summary;
  }
Only position delete files will be generated
amoro-format-iceberg/src/main/java/org/apache/amoro/optimizing/MetricsSummary.java