[ 
https://issues.apache.org/jira/browse/FLINK-12501?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16840441#comment-16840441
 ] 

Aljoscha Krettek commented on FLINK-12501:
------------------------------------------

By the way, [~igalshilman] pointed out to me how Scio solves this: 
https://github.com/spotify/scio/blob/master/scio-macros/src/main/scala/com/spotify/scio/coders/AvroCoderMacros.scala

They create an instance of the Avro type (using the zero-argument constructor) 
and then call {{getSchema()}} on that, which should work for all avro-generated 
types, I think.


> AvroTypeSerializer does not work with types generated by avrohugger
> -------------------------------------------------------------------
>
>                 Key: FLINK-12501
>                 URL: https://issues.apache.org/jira/browse/FLINK-12501
>             Project: Flink
>          Issue Type: Bug
>          Components: Formats (JSON, Avro, Parquet, ORC, SequenceFile)
>            Reporter: Aljoscha Krettek
>            Priority: Major
>
> The main problem is that the code in {{SpecificData.createSchema()}} tries to 
> reflectively read the {{SCHEMA$}} field, that is normally there in Avro 
> generated classes. However, avrohugger generates this field in a companion 
> object, which the reflective Java code will therefore not find.
> This is also described in these ML threads:
>  * 
> [https://lists.apache.org/thread.html/5db58c7d15e4e9aaa515f935be3b342fe036e97d32e1fb0f0d1797ee@%3Cuser.flink.apache.org%3E]
>  * 
> [https://lists.apache.org/thread.html/cf1c5b8fa7f095739438807de9f2497e04ffe55237c5dea83355112d@%3Cuser.flink.apache.org%3E]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to