[
https://issues.apache.org/jira/browse/BEAM-1850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15955158#comment-15955158
]
Kenneth Knowles commented on BEAM-1850:
---------------------------------------
I agree with the sentiment of this. I believe it will relate to BEAM-788.
Basically, it just isn't a {{DoFn}}, but it is useful to run them with the same
machinery.
> Improve interplay between PusbackSideInputRunner 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
>
> 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
(v6.3.15#6346)