[
https://issues.apache.org/jira/browse/FLINK-8863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16518820#comment-16518820
]
ASF GitHub Bot commented on FLINK-8863:
---------------------------------------
Github user xccui commented on a diff in the pull request:
https://github.com/apache/flink/pull/6090#discussion_r196995942
--- Diff:
flink-libraries/flink-sql-client/src/main/java/org/apache/flink/table/client/gateway/local/ExecutionContext.java
---
@@ -187,6 +206,7 @@ private static ClusterSpecification
createClusterSpecification(CustomCommandLine
private final StreamExecutionEnvironment streamExecEnv;
private final TableEnvironment tableEnv;
+ @SuppressWarnings("unchecked")
--- End diff --
The `AggregateFunction` and `TableFunction` take generic type parameters.
Thus when do conversions (e.g., `streamTableEnvironment.registerFunction(k,
(AggregateFunction) udf);`) the Java compiler complains about that.
> Add user-defined function support in SQL Client
> -----------------------------------------------
>
> Key: FLINK-8863
> URL: https://issues.apache.org/jira/browse/FLINK-8863
> Project: Flink
> Issue Type: Sub-task
> Components: Table API & SQL
> Reporter: Timo Walther
> Assignee: Xingcan Cui
> Priority: Major
> Labels: pull-request-available
>
> This issue is a subtask of part two "Full Embedded SQL Client" of the
> implementation plan mentioned in
> [FLIP-24|https://cwiki.apache.org/confluence/display/FLINK/FLIP-24+-+SQL+Client].
>
> It should be possible to declare user-defined functions in the SQL client.
> For now, we limit the registration to classes that implement
> {{ScalarFunction}}, {{TableFunction}}, {{AggregateFunction}}. Functions that
> are implemented in SQL are not part of this issue.
> I would suggest to introduce a {{functions}} top-level property. The
> declaration could look similar to:
> {code}
> functions:
> - name: testFunction
> from: class <-- optional, default: class
> class: org.my.MyScalarFunction
> constructor: <-- optional, needed for certain types of functions
> - 42.0
> - class: org.my.Class <-- possibility to create objects via properties
> constructor:
> - 1
> - true
> - false
> - "whatever"
> - type: INT
> value: 1
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)