flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephan Ewen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-5397) Fail to deserialize savepoints in v1.1 when there exist missing fields in class serialization descriptors
Date Thu, 05 Jan 2017 19:35:58 GMT

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

Stephan Ewen commented on FLINK-5397:
-------------------------------------

Fixed in 1.2 via 3554c96d118a411906a22b1f1087de073617a4c7

> Fail to deserialize savepoints in v1.1 when there exist missing fields in class serialization
descriptors
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-5397
>                 URL: https://issues.apache.org/jira/browse/FLINK-5397
>             Project: Flink
>          Issue Type: Bug
>          Components: State Backends, Checkpointing
>            Reporter: Xiaogang Shi
>            Assignee: Stefan Richter
>
> To restore from the savepoints in previous versions, Flink now keeps all classes whose
serialization is changed and put them in a separated package ("migration"). 
> When deserializing the old savepoints, flink will look up correct descriptors ({{ObjectStreamClass}})
for these classes, without using those ones written in serialized data. The implementation
however is problematic when there exist missing field descriptors in the serialized data.

> When serializing an object, Java will only write the descriptors of those non-null fields.
But when we look up class descriptors with given classes, all fields will be put into the
descriptors. As a result, we will deserialize the savepoints with incorrect descriptors, leading
to serialization exceptions.
> A simple resolution is to update the name of read descriptors using Reflections, without
using different descriptors.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message