[VL] Respect prefix when register functions and convert function name
- Dominant language
- Scala
- Stars
- 1.6k
- Forks
- 657
- Avg merge
- 2d 14h
- Merged PRs (30d)
- 80
Description
### Description
#### Background
Gluten now use Velox codebase's presto function and implement spark specific version if it has same name but different behavior, and Velox already has prefix when register functions.
#### Propose
Use such prefix to distinguish presto function and spark function which has same name, it bring benefits
1. when we want change few codes but hard to submit/wait Velox PR
2. avoid invoke wrong implementation, current register codes require ensure invoke order.
3. better readability.
Needed works:
1. invoke registerFunction with prefix, such as `registerFunction("presto_")` and `registerSparkFunction("spark_")`.
4. do conversion work in native side, maintain a function name maps which map function name to target, such as [sum -> presto, avg -> spark], then convert substrait function name to mapped Velox function.
cc @zhouyuan @rui-mo
Contributor guide
Assessment
This issue has not been assessed yet.