You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Timo Walther (JIRA)" <ji...@apache.org> on 2017/08/10 18:58:00 UTC

[jira] [Commented] (FLINK-7420) Move all Avro code to flink-avro

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

Timo Walther commented on FLINK-7420:
-------------------------------------

This is a duplicate of FLINK-6168.

> 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
>             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)