4paradigm / 4paradigm/OpenMLDB
external udf in offline
- 主要语言
- 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