[jira] [Created] (FLINK-6801) PojoSerializerConfigSnapshot cannot deal with missing Pojo fields

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-6801) PojoSerializerConfigSnapshot cannot deal with missing Pojo fields

Shang Yuanchun (Jira)
Till Rohrmann created FLINK-6801:
------------------------------------

             Summary: 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


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)