You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Tzu-Li (Gordon) Tai (JIRA)" <ji...@apache.org> on 2017/06/13 05:59:01 UTC
[jira] [Closed] (FLINK-6801) PojoSerializerConfigSnapshot cannot
deal with missing Pojo fields
[ https://issues.apache.org/jira/browse/FLINK-6801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tzu-Li (Gordon) Tai closed FLINK-6801.
--------------------------------------
> PojoSerializerConfigSnapshot cannot deal with missing Pojo fields
> -----------------------------------------------------------------
>
> Key: FLINK-6801
> URL: https://issues.apache.org/jira/browse/FLINK-6801
> Project: Flink
> Issue Type: Bug
> Components: Type Serialization System
> Affects Versions: 1.3.0, 1.4.0
> Reporter: Till Rohrmann
> Assignee: Tzu-Li (Gordon) Tai
> Fix For: 1.3.1, 1.4.0
>
>
> The {{PojoSerializerConfigSnapshot}} tries to deserialize Pojo {{Fields}}. If the underlying Pojo class changed such that a formerly present field is not longer part of the Pojo, then the deserialization of the {{PojoSerializerConfigSnapshot}} will fail. As a consequence of this failure, there is no possibility to do state migration (e.g. skipping over this field when reading old data).
> I think it is better to simply store the field name in the {{PojoSerializerConfigSnapshot}} and try to resolve the fields in the {{PojoSerializer#ensureCompatibility}} method. That way it is possible to construct a ConvertDeserializer allowing for state migration.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)