Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FLINK-5024] [core] Refactor the interface of State and StateDescriptor #3243

Closed

Conversation

StephanEwen
Copy link
Contributor

This is a refactored version of #2768

This pull request splits the StateDescriptor:

  • Basic StateDescriptor: This only contains only the information
  • The SimpleStateDescriptor is the base of all currently used states and holds the information about a single serializer, for the state type.
  • This prepares for a future CompositeStateDescriptor that would have multiple serializers, such as for the upcoming MapState.

This is technically not API-breaking, since it only touches methods with @PublicEvolving annotations.
We should think carefully, though, because this may affect all users that use the state API on RuntimeContext and on the TriggerContext (in custom windows).

* object given a {@link StateBackend} using {@link #bind(StateBackend)}.
*
* Base class for state descriptors. A {@code StateDescriptor} is used for creating
* {@link State keyed state} in stateful operations. The descriptor contains the name of the state,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a quick note: StateDescriptors are also used for non-keyed state, i.e. operator state.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please close this issue as well if you address this here: https://issues.apache.org/jira/browse/FLINK-5599

@StephanEwen
Copy link
Contributor Author

Subsumed by another pull request...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants