Github user twalthr commented on a diff in the pull request: https://github.com/apache/flink/pull/6082#discussion_r192771700 --- Diff: flink-formats/flink-avro/src/main/java/org/apache/flink/formats/avro/typeutils/AvroRecordClassConverter.java --- @@ -73,9 +75,37 @@ private AvroRecordClassConverter() { final GenericTypeInfo<?> genericTypeInfo = (GenericTypeInfo<?>) extracted; if (genericTypeInfo.getTypeClass() == Utf8.class) { return BasicTypeInfo.STRING_TYPE_INFO; + } else if (genericTypeInfo.getTypeClass() == Map.class) { + // avro map key is always string + return Types.MAP(Types.STRING, + convertPrimitiveType(schema.getValueType().getType())); + } else if (genericTypeInfo.getTypeClass() == List.class && + schema.getType() == Schema.Type.ARRAY) { --- End diff -- Is this check necessary? If yes, why is it not necessary for Maps?
---