sunjincheng created FLINK-6018:
----------------------------------
Summary: Minor improvements about `AbstractKeyedStateBackend#getPartitionedState` method
Key: FLINK-6018
URL:
https://issues.apache.org/jira/browse/FLINK-6018 Project: Flink
Issue Type: Improvement
Components: DataStream API, State Backends, Checkpointing
Reporter: sunjincheng
Assignee: sunjincheng
The code snippet currently in the `AbstractKeyedStateBackend # getPartitionedState` method, as follows:
{code}
// TODO: This is wrong, it should throw an exception that the initialization has not properly happened
if (!stateDescriptor.isSerializerInitialized()) {
stateDescriptor.initializeSerializerUnlessSet(new ExecutionConfig());
}
{code}
I hope this code has a little improvement to the following:
approach 1:
According to the `TODO` information we throw an exception
{code}
if (!stateDescriptor.isSerializerInitialized()) {
throw new IllegalStateException("The serializer of the descriptor has not been initialized!");
}
{code}
approach 2:
Try to initialize and remove `if (!stateDescriptor.isSerializerInitialized()) {` logic.
{code}
stateDescriptor.initializeSerializerUnlessSet(new ExecutionConfig());
{code}
Meanwhile, If we use the approach 2, I suggest that `AbstractKeyedStateBackend` add a `private final ExecutionConfig executionConfig` property. then we can change the code like this:
{code}
stateDescriptor.initializeSerializerUnlessSet(executionConfig);
{code}
Are the above suggestions reasonable for you?
Welcome anybody's feedback and corrections.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)