You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Serge Rielau (Jira)" <ji...@apache.org> on 2022/12/01 21:32:00 UTC

[jira] [Created] (SPARK-41353) UNRESOLVED_ROUTINE error class

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-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org