Serge Rielau created SPARK-41353:
------------------------------------

             Summary: UNRESOLVED_ROUTINE error class
                 Key: SPARK-41353
                 URL: https://issues.apache.org/jira/browse/SPARK-41353
             Project: Spark
          Issue Type: Improvement
          Components: Spark Core
    Affects Versions: 3.4.0
            Reporter: Serge Rielau


We want to unify andĀ  name:
"_LEGACY_ERROR_TEMP_1041" : \{
  "message" : [
    "Undefined function <name>."  ]
},
_LEGACY_ERROR_TEMP_1242" : \{
  "message" : [
    "Undefined function: <rawName>. This function is neither a 
built-in/temporary function, nor a persistent function that is qualified as 
<fullName>."  ]
},"_LEGACY_ERROR_TEMP_1243" : {
  "message" : [
    "Undefined function: <rawName>"  ]
I proposal is:
UNRESOLVED_ROUTINE. routineName => `a`.`b`.`func`, routineSignature => [INT, 
STRING] , searchPath => [`builtin`, `session`, `hiveMetaStore`.`default`]
This assumes agreement to introduce `builtin` as optional qualifier for builtin 
functions.
And `session` a optional qualifier for temporary functions (separate PR).

Q: Why ROUTINE?
A: Some day we may want to support PROCEDURES and they will follow the name 
rule and share the same namespace.

Q:Why A PATH
A: We do follow a hard coded path today with a fixed precedenceĀ  rule.

Q: Why provide the signature
A: Longterm we may support overloading of functions by arity, type or even 
parameter name.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to