4paradigm / 4paradigm/OpenMLDB

external udf in offline

未关闭
#3,377 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
batch-engine bug sql
主要语言
C++
星标
1.7k
派生
331
平均合并
12 天 12 小时
30 天内合并 PR
1

描述

In batch, udf register is weird, need fix.
- udf load
https://github.com/4paradigm/OpenMLDB/blob/29b74f721e12b09142413b58a71112e5925aaaf2/java/openmldb-batch/src/main/scala/com/_4paradigm/openmldb/batch/SparkPlanner.scala#L352-L371
If file in proto is abs path, e.g. /tmp/libudf.so, it cuts to libudf.so and use `/libudf.so` to register
in local mode(yarn mode will use libudf.so, and now we'll use `/libudf.so` to load it, it's ok)
- still in local mode, openmldbCatalogService will register udf first, then engine in sparkplanner will register again, so in local mode the abs udf register succeed in the first time, failed in second time, it's confused. Test should be caution.

**No offline udf test** (local & yarn), `create function` only effects taskmanager, we should run the job to check udf load in batch.

贡献指南

打开贡献指南

调研方向

The issue points to SparkPlanner.scala lines 352-371 for UDF loading logic. Examine how absolute paths are handled and the double registration in local mode. Check openmldbCatalogService and SparkPlanner registration order. Run existing batch tests to see if any test UDF functionality; the issue notes there is no offline UDF test, so you may need to create one. Verify behavior in both local and YARN modes.

由索引模型根据 Issue 内容生成。

评估

技术栈
java, scala
领域
backend, databases, machine-learning
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。