default void commit(MixedTable mixedTable, WriteResult result, boolean base) {
    if (mixedTable.isKeyedTable()) {
      KeyedTable keyedTable = mixedTable.asKeyedTable();
      if (base) {
        AppendFiles baseAppend = keyedTable.baseTable().newAppend();
        Arrays.stream(result.dataFiles()).forEach(baseAppend::appendFile);
        baseAppend.commit();
      } else {
        AppendFiles changeAppend = keyedTable.changeTable().newAppend();
        Arrays.stream(result.dataFiles()).forEach(changeAppend::appendFile);
        changeAppend.commit();
      }
    } else {
      if (!base) {
        throw new IllegalArgumentException(
            String.format(
                "mixed-format table %s is a unkeyed table, can't commit to change table",
                mixedTable.name()));
      }
      UnkeyedTable unkeyedTable = mixedTable.asUnkeyedTable();
      AppendFiles baseAppend = unkeyedTable.newAppend();
      Arrays.stream(result.dataFiles()).forEach(baseAppend::appendFile);
      baseAppend.commit();
    }
  }
This class contains flink table rowType schema and others, and will replace {@link FlinkTestBase}
base class in the future.
amoro-format-mixed/amoro-mixed-flink/amoro-mixed-flink-common/src/test/java/org/apache/amoro/flink/FlinkTableTestBase.java