You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Kyle Weaver (Jira)" <ji...@apache.org> on 2021/05/12 20:49:00 UTC

[jira] [Updated] (BEAM-12106) Support ARRAY type in BeamJavaUdfCalcRule.

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

Kyle Weaver updated BEAM-12106:
-------------------------------
    Fix Version/s: 2.31.0
       Resolution: Fixed
           Status: Resolved  (was: Open)

> Support ARRAY type in BeamJavaUdfCalcRule.
> ------------------------------------------
>
>                 Key: BEAM-12106
>                 URL: https://issues.apache.org/jira/browse/BEAM-12106
>             Project: Beam
>          Issue Type: New Feature
>          Components: dsl-sql-zetasql
>            Reporter: Kyle Weaver
>            Assignee: Kyle Weaver
>            Priority: P2
>              Labels: zetasql-java-udf
>             Fix For: 2.31.0
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> There are at least a couple reasons why this doesn't work yet:
>  # Type inference. Returning a List seems to work okay because we preserve the return element type [1], but taking a List as an input doesn't work because we lose the parameters' element type(s) [2].
>  # The current matching logic rejects the Calcite ARRAY operator. We can probably make it less strict. [3]
>  [1] [https://github.com/apache/beam/blob/ffb00911b5d5579544fc4c699f186dd3e1cd2b83/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/ScalarFunctionImpl.java#L129]
> [2] [https://github.com/apache/beam/blob/0c01636fc8610414859d946cb93eabc904123fc8/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/UdfImplReflectiveFunctionBase.java#L61]
> [3] https://github.com/apache/beam/blob/315386cdfec6803b95f0b881d699e674f63d48ad/sdks/java/extensions/sql/zetasql/src/main/java/org/apache/beam/sdk/extensions/sql/zetasql/BeamJavaUdfCalcRule.java#L88-L89



--
This message was sent by Atlassian Jira
(v8.3.4#803005)