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/01/18 23:48:00 UTC

[jira] [Commented] (BEAM-12578) Illegal parameter type: OnWindowExpirationContextParameter

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

Kenneth Knowles commented on BEAM-12578:
----------------------------------------

You are certainly right. Here it is: https://github.com/apache/beam/blob/6390bcd265512f077c92124a551419ee0349c84c/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignatures.java#L199

Notably, you don't need it. I actually don't know why it exists, and don't think it should. We trying to move away from "Context" parameters (which are not contexts at all but just collections of parameters in a hard-to-debug/analyze object). The context gives you access to the window, which you can do with the {{@Window}} parameter.

> Illegal parameter type: OnWindowExpirationContextParameter
> ----------------------------------------------------------
>
>                 Key: BEAM-12578
>                 URL: https://issues.apache.org/jira/browse/BEAM-12578
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-java-core
>    Affects Versions: 2.29.0
>            Reporter: Stefan Wachter
>            Priority: P3
>
> {{OnWindowsExpirationContext}} can not be used as a parameter for {{DoFn}} methods annotated by {{@OnWindowExpiration}}. The following exception is raised:
> {code:java}
>  java.lang.IllegalArgumentException: org.opennms.nephron.cortex.PaneAccumulator$PaneCombinerFn: Illegal parameter type: OnWindowExpirationContextParameter{}{code}
> As a workaround a parameter of type {{OutputReceiver}} can be used, though.



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