flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tzu-Li (Gordon) Tai (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-9202) AvroSerializer should not be serializing the target Avro type class
Date Mon, 14 May 2018 07:40:00 GMT

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

Tzu-Li (Gordon) Tai commented on FLINK-9202:

Will close this ticket, and reopen one that addresses removing writing serializers to checkpoints
and a state schema migration umbrella ticket.

> AvroSerializer should not be serializing the target Avro type class
> -------------------------------------------------------------------
>                 Key: FLINK-9202
>                 URL: https://issues.apache.org/jira/browse/FLINK-9202
>             Project: Flink
>          Issue Type: Bug
>          Components: Type Serialization System
>            Reporter: Tzu-Li (Gordon) Tai
>            Assignee: Tzu-Li (Gordon) Tai
>            Priority: Blocker
>             Fix For: 1.6.0
> The {{AvroSerializer}} contains this field which is written when the serializer is written
into savepoints:
> [https://github.com/apache/flink/blob/be7c89596a3b9cd8805a90aaf32336ec2759a1f7/flink-formats/flink-avro/src/main/java/org/apache/flink/formats/avro/typeutils/AvroSerializer.java#L78]
> This causes Avro schema evolution to not work properly, because Avro generated classes
have non-fixed serialVersionUIDs. Once a new Avro class is generated with a new schema, that
class can not be loaded on restore due to incompatible UIDs, and thus the serializer can not
be successfully deserialized.
> A possible solution would be to only write the classname, and dynamically load the class
into a transient field.

This message was sent by Atlassian JIRA

View raw message