You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Kenneth Knowles (Jira)" <ji...@apache.org> on 2022/06/03 17:30:00 UTC
[jira] [Commented] (BEAM-1850) Improve interplay between PushbackSideInputRunner and GroupAlsoByWindowViaWindowSetDoFn
[ https://issues.apache.org/jira/browse/BEAM-1850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17546492#comment-17546492 ]
Kenneth Knowles commented on BEAM-1850:
---------------------------------------
This issue has been migrated to https://github.com/apache/beam/issues/18358
> Improve interplay between PushbackSideInputRunner and GroupAlsoByWindowViaWindowSetDoFn
> ---------------------------------------------------------------------------------------
>
> Key: BEAM-1850
> URL: https://issues.apache.org/jira/browse/BEAM-1850
> Project: Beam
> Issue Type: Improvement
> Components: runner-core, runner-flink
> Reporter: Aljoscha Krettek
> Priority: P3
> Time Spent: 50m
> Remaining Estimate: 0h
>
> This originated from a discussion on a PR: https://github.com/apache/beam/pull/2235
> {{GroupAlsoByWindowViaWindowSetDoFn}}/{{GroupAlsoByWindowViaWindowSetNewDoFn}} and {{PushbackSideInputDoFnRunner}} don't work well together and we manually need to explode windows in {{FlinkStreamingTransformTranslators.ToKeyedWorkItem}} because of this:
> - {{GroupAlsoByWindowViaWindowSetDoFn}} is a {{DoFn<KeyedWorkItem<K, InputT>, KV<K, OutputT>>}} so you have to push in {{KeyedWorkItem}}. These themselves contain {{WindowedValue<InputT>}} (or timers).
> - For executing a {{DoFn}} we use a {{DoFnRunner}}. For our problem the interesting case is using a {{PushbackSideInputDoFnRunner}}. The interesting method is {{processElementInReadyWindows(WindowedValue<InputT> elem)}} where {{InputT}} is the input type of the {{DoFn}} which, for the windowing case, is {{KeyedWorkItem<K, InputT>}} (from above). The actual expanded type signature is thus {{processElementInReadyWindows(WindowedValue<KeyedWorkItem<K, InputT>> elem)}} where the keyed work items again contain {{WindowedValues}} (again, from above).
> I think the {{PushbackSideInputDoFnRunner}} was not initially meant for executing {{GroupAlsoByWindowViaWindowSetDoFns}}.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)