apache / apache/beam

StateNamespaces.window() potentially unstable / stable encodings for windows

Open
#18,059 0 comments 0 reactions 0 assignees View on GitHub
core improvement java P3
Dominant language
Java
Stars
8.7k
Forks
4.7k
Avg merge
2d 2h
Merged PRs (30d)
205

Description

WindowNamespace#stringKey includes a base64 encoding of the window as encoded by the windowCoder. This makes the key unpredictable if we support features such as reloading a pipeline with a new SDK or bugfixed pipeline. The encoding should be stable and documented.

And even if the SDK's window types are stable and documented, users can define their own windows with coders and these may be less stable / requiring bugfixes. This ticket is to track the issue and any new ideas.

[1] https://github.com/apache/incubator-beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/util/state/StateNamespaces.java#L113

Imported from Jira [BEAM-652](https://issues.apache.org/jira/browse/BEAM-652). Original Jira may contain additional context.
Reported by: kenn.

Contributor guide

Open the contributing guide

Research direction

Start with sdks/java/core/src/main/java/org/apache/beam/sdk/util/state/StateNamespaces.java around line 113, where WindowNamespace#stringKey encodes the window with windowCoder. Investigate how stable encoding should work across SDK changes and user-defined window coders. Done means a concrete approach for stable encoding is established and documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.