[ 
https://issues.apache.org/jira/browse/BEAM-12446?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kenneth Knowles updated BEAM-12446:
-----------------------------------

This Jira ticket has a pull request attached to it, but is still open. Did the 
pull request resolve the issue? If so, could you please mark it resolved? This 
will help the project have a clear view of its open issues.

> Wrong process function arg order cause unexpected runtime value shift
> ---------------------------------------------------------------------
>
>                 Key: BEAM-12446
>                 URL: https://issues.apache.org/jira/browse/BEAM-12446
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-py-core
>            Reporter: Yichi Zhang
>            Priority: P3
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> if kw args of process function are declared before DnFnParam placeholders the 
> fulfillment will shift to wrong index unexpectedly.
> For example if process has signature
> {code:java}
>  def process(element, an_arg='x', w=DoFn.WindowParam):
>    window_start_1 = an_arg.start // this is ok, though unexpectedly
>    window_start_2 = w.start // this is not ok, also unexpectedly, value of w 
> is shifted onto an_arg, and w is DoFn.WindowParam, it throws exception 
> _DoFnParam has no attribute 'start'.
>    
>    ...{code}
> at runtime the window param will be mapped onto 'an_arg' instead of w, and w 
> will not be replaced with runtime value, causing confusing behaviors. (e.g. 
> an_arg will be an instance of GlobalWindow or FixedWindow but w is still 
> DoFn.WindowParam).



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to