apache / apache/linkis

[Bug] The general udf cannot be registered under the flink engine

Open
#4,055 3 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
3.4k
Forks
1.2k
PR merge metrics
No merged PRs in 30d

Description

### Search before asking

- [X] I searched the [issues](https://github.com/apache/incubator-linkis/issues) and found no similar issues.

### Linkis Component

linkis-engineconnn-plugin

### Steps to reproduce

1.UDF管理,添加一个通用的udf
2.Scriptis添加一个fql脚本,使用上面添加的udf
3.报错udf函数找不到
4.定位引擎的启动日志,注册udf时报错 SqlParseException: Encountered"\"" at line 1, column 39
5.单双引号的问题,修改表linkis_ps_udf_version对应udf的register_format字段的双引号为单引号
6.关闭之前的引擎再重新运行fql脚本,还是报错udf函数找不到
7.定位引擎日志,注册udf报错 Unknown statement:
8.检查源码发现 linkis-engineconn-plugin-flink模块下org.apache.linkis.engineconnplugin.flink.client.sql.parser.SqlCommandParserImpl的parseStmt方法中缺失对SCreateFunction的处理

ps:临时绕过这个问题后发现,udf的jar包需要手动引入到flink的lib目录中。不像Spark会自动创建一个udf目录。

### Expected behavior

通过udf管理添加的udf无法注册到flink引擎

### Your environment

Linkis version used: 1.1.1

### Anything else

_No response_

### Are you willing to submit a PR?

- [ ] Yes I am willing to submit a PR!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.