[ https://issues.apache.org/jira/browse/FLINK-9808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tzu-Li (Gordon) Tai closed FLINK-9808. -------------------------------------- Resolution: Fixed Merged for 1.7.0: 70f4141369850dcc16efe3ddfe71618ea8cda304 > Implement state conversion procedure in state backends > ------------------------------------------------------ > > Key: FLINK-9808 > URL: https://issues.apache.org/jira/browse/FLINK-9808 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing > Reporter: Tzu-Li (Gordon) Tai > Assignee: Aljoscha Krettek > Priority: Critical > Labels: pull-request-available > Fix For: 1.7.0 > > > With FLINK-9377 in place and that config snapshots serve as the single source > of truth for recreating restore serializers, the next step would be to > utilize this when performing a full-pass state conversion (i.e., read with > old / restore serializer, write with new serializer). > For Flink's heap-based backends, it can be seen that state conversion > inherently happens, since all state is always deserialized after restore with > the restore serializer, and written with the new serializer on snapshots. > For the RocksDB state backend, since state is lazily deserialized, state > conversion needs to happen for per-registered state on their first access if > the registered new serializer has a different serialization schema than the > previous serializer. > This task should consist of three parts: > 1. Allow {{CompatibilityResult}} to correctly distinguish between whether the > new serializer's schema is a) compatible with the serializer as it is, b) > compatible after the serializer has been reconfigured, or c) incompatible. > 2. Introduce state conversion procedures in the RocksDB state backend. This > should occur on the first state access. > 3. Make sure that all other backends no longer do redundant serializer > compatibility checks. That is not required because those backends always > perform full-pass state conversions. -- This message was sent by Atlassian JIRA (v7.6.3#76005)