Hi! I also like the idea of fallback database for functions, it seems like a fairly simple but very useful feature. One thing I would consider is adding this as a query option instead of a flag, but it is probably harder to implement, so I am ok with adding a flag now, and possibly later adding a query option that overrides it.
Regards, Csaba On Wed, Nov 9, 2022 at 11:51 AM Johan du Plessis <johan.du.ples...@gmail.com> wrote: > Hi, > > I think this is a good idea. It might allow the possibility to > separate functions from the core of Impala and have "function packs" with > their own release schedule and not depend on an upgrade to add those > functions. E.g. imagine a "geometry function pack" that implements ST_xxxx > functions. It will lower the barrier of entry and speed of development of > additional functionality and will speed up adoption because there might not > be any need to upgrade impala to get new functions. > > Regards, > Johan du Plessis > > > > On Tue, 8 Nov 2022 at 08:32, Quanlong Huang <huangquanl...@gmail.com> > wrote: > > > Hi Xiaoqing, > > > > Thanks for raising this request! This requires creating a > "_impala_global" > > database in Hive when installing Impala, since each function is > associated > > with a db in HMS. Also need planner changes in resolving function names. > > > > Why not just create these "global" UDFs in a util db and use their fully > > qualified names (<database>.<func>)? Queries won't be lengthy if a short > db > > name is used. > > > > Regards, > > Quanlong > > > > On Mon, Nov 7, 2022 at 4:42 PM xiaoqing gao <gaoxq...@gmail.com> wrote: > > > > > Hi team! > > > When I execute the CREATE FUNCTION statement, It can only work on one > > > database that I specified. > > > I hope to support a feature when I execute the following statement, it > > can > > > work on all databases. The Syntax: > > > CREATE GLOBAL FUNCTION [IF NOT EXISTS] > > [db_name.]function_name([arg_type[, > > > arg_type...]) > > > RETURNS return_type > > > LOCATION 'hdfs_path_to_dot_so' > > > SYMBOL='symbol_name' > > > > > > It'll need a default database named _impala_global. The global function > > > will be related to _impala_global. > > > > > > Do you have any ideas? > > > > > > Best Regards, > > > Xiaoqing Gao > > > > > >