Details
-
Task
-
Status: Resolved
-
P3
-
Resolution: Fixed
-
None
-
None
Description
While Windowing basics are implemented in the Go SDK, there is precious little validation that it's correct. Much work has been done largely for the benefit of Global Windowing.
DoFn Authors can specify event times for elements by returning a `beam.EventTime` along with their element, allowing windowing transforms by the runner to take effect. They can observe windows in their DoFns by having a `[]beam.Window` parameter, and extract results.
Pipeline authors can insert `beam.WindowInto` transforms to have elements be batched into the appropriate window slices.
But very little of this has been validated end to end. This umbrella task is to test and validate specific aspects of the window implementation to ensure correctness.
The tricky part is that windows are selected by runners, meaning many of these must be integration tests.
- Windows are correctly observed in DoFns.
- Validate windows are aggregated correctly in GBKs and Lifted Combines
- In particular sliding windows where a single element could contribute to multiple aggregates
- Validate Side Input behavior WRT windows (implicit observation of windows)
- In particular, Side Inputs are valid per window.
Attachments
Issue Links
- mentioned in
-
Page Loading...
1.
|
[Go SDK] Windows are correctly observed in DoFns. | Resolved | Danny McCormick |
|
||||||||
2.
|
[Go SDK] Validate windows are aggregated correctly in GBKs and Combines | Resolved | Robert Burke |
|
||||||||
3.
|
[Go SDK] Validate Side Input behavior WRT windows | Triage Needed | Jack McCluskey |
|