@Override
  public Optional<ConnectorTableLayout> getInsertLayout(
      ConnectorSession session, ConnectorTableHandle tableHandle) {
    IcebergTableHandle table = (IcebergTableHandle) tableHandle;
    Schema schema = SchemaParser.fromJson(table.getTableSchemaJson());
    PartitionSpec partitionSpec =
        PartitionSpecParser.fromJson(
            schema,
            table
                .getPartitionSpecJson()
                .orElseThrow(
                    () -> new VerifyException("Partition spec missing in the table handle")));
    return getWriteLayout(schema, partitionSpec, false);
  }
Iceberg original metadata has some problems for mixed-format table, such as iceberg version,
table type. So copy from IcebergMetadata and made some change
amoro-format-mixed/amoro-mixed-trino/src/main/java/org/apache/amoro/trino/unkeyed/IcebergMetadata.java