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/01 14:30:04 UTC
[jira] [Assigned] (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 reassigned FLINK-6801:
------------------------------------------
Assignee: Tzu-Li (Gordon) Tai
> 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
>
> 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.3.15#6346)