[ https://issues.apache.org/jira/browse/FLINK-13703?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17363519#comment-17363519 ]
Patrick Lucas commented on FLINK-13703: --------------------------------------- Hit a very similar issue (though didn't think it was the same at first), when using the option `gettersReturnOptional`. With this option, all getters return Optional (mainly useful along with `optionalGettersForNullableFieldsOnly` to limit it to only nullable fields), which breaks Flink's POJO analyzer in a similar way and results in the same exception. I never hit this before because I've tended to not have nullable fields. > AvroTypeInfo requires objects to be strict POJOs (mutable, with setters) > ------------------------------------------------------------------------ > > Key: FLINK-13703 > URL: https://issues.apache.org/jira/browse/FLINK-13703 > Project: Flink > Issue Type: Improvement > Components: Formats (JSON, Avro, Parquet, ORC, SequenceFile) > Reporter: Alexander Fedulov > Priority: Minor > > There exists an option to generate Avro sources which would represent > immutable objects (`createSetters` option set to false) > [\[1\]|https://github.com/commercehub-oss/gradle-avro-plugin] , > [\[2\]|https://avro.apache.org/docs/current/api/java/org/apache/avro/mojo/AbstractAvroMojo.html]. > Those objects still have full arguments constructors and are being correctly > dealt with by Avro. > `AvroTypeInfo` in Flink performs a check to verify if a Class complies to > the strict POJO requirements (including setters) and throws an > IllegalStateException("Expecting type to be a PojoTypeInfo") otherwise. Can > this check be relaxed to provide better immutability support? > +Steps to reproduce:+ > 1) Generate Avro sources from schema using `createSetters` option. > 2) Use generated class in > `ConfluentRegistryAvroDeserializationSchema.forSpecific(GeneratedClass.class, > schemaRegistryUrl)` -- This message was sent by Atlassian Jira (v8.3.4#803005)