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

boshu Zheng edited comment on FLINK-10897 at 1/30/19 2:13 AM:
--------------------------------------------------------------

I will try to follow the example that you presented at FlinkForwardChina. 
Additionally, I propose to add two fields to `PojoSerializer`, namely 
`previousFieldNames` and `previousFieldSerializers` which are snapshotted and 
restored by a new `PojoSerializerSnapshot`. When restoring states via 
`PojoSerializer#deserialize`, we should be able to figure out which fields have 
been removed/added or have a new type with these additional fields.
What do you think? [~tzulitai]


was (Author: kisimple):
I will try to follow the example that you presented at FlinkForwardChain. 
Additionally, I propose to add two fields to `PojoSerializer`, namely 
`previousFieldNames` and `previousFieldSerializers` which are snapshotted and 
restored by a new `PojoSerializerSnapshot`. When restoring states via 
`PojoSerializer#deserialize`, we should be able to figure out which fields have 
been removed/added or have a new type with these additional fields.
What do you think? [~tzulitai]

> Support POJO state schema evolution
> -----------------------------------
>
>                 Key: FLINK-10897
>                 URL: https://issues.apache.org/jira/browse/FLINK-10897
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Type Serialization System
>            Reporter: Tzu-Li (Gordon) Tai
>            Assignee: boshu Zheng
>            Priority: Major
>
> Main action point for this is to implement a separate POJO serializer that is 
> specifically used as the restore serializer.
> This restore POJO serializer should be able to read and dump values of fields 
> that no longer exists in the updated POJO schema, and assign default values 
> to newly added fields. Snapshot of the {{PojoSerializer}} should contain 
> sufficient information so that on restore, the information can be compared 
> with the adapted POJO class to figure out which fields have been removed / 
> added.
> Changing fields types is out of scope and should not be supported.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to