4paradigm / 4paradigm/OpenMLDB
external udf in offline
- Vorherrschende Sprache
- C++
- Sterne
- 1.7k
- Forks
- 331
- Ø Merge
- 12 T. 12 Std.
- Gemergte PRs (30 T.)
- 1
Beschreibung
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.
Beitragsleitfaden
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, scala
- Bereich
- backend, databases, machine-learning
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100