[ https://issues.apache.org/jira/browse/FLINK-7420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16209108#comment-16209108 ]
Timo Walther commented on FLINK-7420: ------------------------------------- In theory, I have this ready in branch. I can open a PR for it. However, I think we should create a proper {{AvroTypeInfo}} that does not depend on Kryo first, if we want to have a nice solution. But we can discuss this in the PR again. > Move all Avro code to flink-avro > -------------------------------- > > Key: FLINK-7420 > URL: https://issues.apache.org/jira/browse/FLINK-7420 > Project: Flink > Issue Type: Improvement > Components: Build System > Reporter: Stephan Ewen > Assignee: Timo Walther > Priority: Blocker > Fix For: 1.4.0 > > > *Problem* > Currently, the {{flink-avro}} project is a shell with some tests and mostly > duplicate and dead code. The classes that use Avro are distributed quite > wildly through the code base, and introduce multiple direct dependencies on > Avro in a messy way. > That way, we cannot create a proper fat Avro dependency in which we shade > Jackson away. > Also, we expose Avro as a direct and hard dependency on many Flink modules, > while it should be a dependency that users that use Avro types selectively > add. > *Suggested Changes* > We should move all Avro related classes to {{flink-avro}}, and give > {{flink-avro}} a dependency on {{flink-core}} and {{flink-streaming-java}}. > - {{AvroTypeInfo}} > - {{AvroSerializer}} > - {{AvroRowSerializationSchema}} > - {{AvroRowDeserializationSchema}} > To be able to move the the avro serialization code from {{flink-ore}} to > {{flink-avro}}, we need to load the {{AvroTypeInformation}} reflectively, > similar to how we load the {{WritableTypeInfo}} for Hadoop. -- This message was sent by Atlassian JIRA (v6.4.14#64029)