在 Hive客戶端中使用自定義創建UDF函數時,報"ERROR 10011","invalid function"的異常:
在Hive上自定義創建了一個函數,在hive本地執行是成功的。但是使用beeline連接hive執行函數或者在hue平台執行函數都報錯,提示Invalid function。
Hive2.3版本
Hadoop2.7版本
hive (default)> desc function extended sqlServerdes; OK tab_name There is no documentation for function 'sqlServerdes' Function class:com.fuyun.udf.DesGUDF Function type:PERSISTENT Resource:hdfs:///user/hive/libs/SqlServerDes_v1.1.jar Time taken: 0.008 seconds, Fetched: 4 row(s)

可能原因:
多個HiveServer之間或者Hive與Spark之間共用的元數據未同步,導致不同HiveServer實例內存數據不一致,造成UDF不生效。
解決方法:
需要將新建的UDF信息同步到HiveServer中,執行reload function操作即可。
參考文章:https://support.huaweicloud.com/trouble-mrs/mrs_03_0173.html
