[ 
https://issues.apache.org/jira/browse/BEAM-1850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15953219#comment-15953219
 ] 

Aljoscha Krettek commented on BEAM-1850:
----------------------------------------

FYI: [~tgroh] [~kenn]

> 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)

Reply via email to