GitHub user tzulitai opened a pull request:

    https://github.com/apache/flink/pull/3937

    [FLINK-6482] [core] Add nested serializers to config snapshots of composite 
serializers

    This commit adds also the nested serializers themselves to the 
configuration snapshots of composite serializers. This opens up the opportunity 
to use the previous nested serializer as the convert deserializer in the case 
that a nested serializer in the new serializer determines that state migration 
is required.
    
    Take for example a Tuple serializer. If any one of the nested field 
serializers is not compatible, then the whole Tuple serializer will need to be 
migrated. Prior to this PR, this means that all serializers would need to be 
able to be either compatible or provide a convert deserializer. With this 
change, this relaxes this by opening up the opportunity to just use the 
previous serializer of fields as the convert deserializer.
    
    Only the composite serializers are affected by this change.
    
    This commit also consolidates all TypeSerializer-related serialization
    proxies into a single utility class. A few renamings are included, namely:
    1. `ClassNotFoundDummyTypeSerializer` --> `UnloadableDummyTypeSerializer`
    2. `TypeSerializerUtil` --> `TypeSerializerSerializationUtil` (because 
that's all its used for)
    3. `TypeSerializerSerializationProxy` --> functionality moved to a static 
method of `TypeSerializerSerializationUtil`
    4. `StateMigrationUtil` --> moved to flink-core and renamed to 
`CompatibilityUtil`.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/tzulitai/flink FLINK-6482

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/3937.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3937
    
----
commit a189999f799fe943f2297293a2f74707b9c4188d
Author: Tzu-Li (Gordon) Tai <[email protected]>
Date:   2017-05-18T06:51:33Z

    [FLINK-6482] [core] Add nested serializers to config snapshots of composite 
serializers
    
    This commit adds also the nested serializers themselves to the
    configuration snapshots of composite serializers. This opens up the
    oppurtunity to use the previous nested serializer as the convert
    deserializer in the case that a nested serializer in the new serializer
    determines that state migration is required.
    
    This commit also consolidate all TypeSerializer-related serialization
    proxies into a single utility class.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to