You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Stephan Ewen (JIRA)" <ji...@apache.org> on 2018/03/20 20:16:00 UTC

[jira] [Created] (FLINK-9034) State Descriptors drop TypeInformation on serialization

Stephan Ewen created FLINK-9034:
-----------------------------------

             Summary: State Descriptors drop TypeInformation on serialization
                 Key: FLINK-9034
                 URL: https://issues.apache.org/jira/browse/FLINK-9034
             Project: Flink
          Issue Type: Bug
          Components: State Backends, Checkpointing
    Affects Versions: 1.4.2, 1.5.0
            Reporter: Stephan Ewen
             Fix For: 1.6.0


The following code currently causes problems

{code}
public class MyFunction extends RichMapFunction<A, B>  {

    private final ValueStateDescriptor<MyType> descr = new ValueStateDescriptor<>("state name", MyType.class);

    private ValueState<MyType> state;

    @Override
    public void open() {
        state = getRuntimeContext().getValueState(descr);
    }
}
{code}

The problem is that the state descriptor drops the type information and creates a serializer before serialization as part of shipping the function in the cluster. To do that, it initializes the serializer with an empty execution config, making serialization inconsistent.

This is mainly an artifact from the days when dropping the type information before shipping was necessary, because the type info was not serializable. It now is, and we can fix that bug.






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