Kyle Weaver created BEAM-12106:
----------------------------------
Summary: 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
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)