Github user WeichenXu123 commented on a diff in the pull request:

    https://github.com/apache/spark/pull/20795#discussion_r176039540
  
    --- Diff: 
sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveSessionCatalog.scala ---
    @@ -175,6 +175,8 @@ private[sql] class HiveSessionCatalog(
         super.functionExists(name) || hiveFunctions.contains(name.funcName)
       }
     
    +  override def externalFunctionExists(name: FunctionIdentifier): Boolean = 
functionExists(name)
    --- End diff --
    
    According to your logic, I think HiveSessionCatalog should override both 
`buildinFunctionExists` and `externalFunctionExists`. Like:
    
    ```
    override def buildinFunctionExists(name: FunctionIdentifier): Boolean = {
       super.buildinFunctionExists(name) || 
hiveFunctions.contains(name.funcName)
    }
    override def externalFunctionExists(name: FunctionIdentifier): Boolean = 
functionExists(name) = {
      super.externalFunctionExists(name)
    }
    ```


---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to