[ 
https://issues.apache.org/jira/browse/HIVE-309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12694501#action_12694501
 ] 

Ashish Thusoo commented on HIVE-309:
------------------------------------

The latest patch does not seem to have all the files as well.

Also I still have some reservations about this approach. The reasons are as 
follows:

- This approach works quite well as long as the CLI is used to run the queries, 
however, as soon as you go to other clients such as the web interface this 
approach will break down. The reason being that in the web client there is a 
central server running the queries being submitted by the user and so all the 
users are sharing the same udf.properties file and it will be impossible for 
the user to actually add his functions to this udf.properties file as he will 
not have access to the locations where the udf.properties files exists. In this 
case and in other cases where there are centralized servers that serve up the 
queries (something that is possible to some extent now with the JDBC drivers), 
this approach will break as the registerUDF function is only called on the udf 
side.

- Having said that, this approach does work well if you want to have private 
UDFs which you do not really share with other folks and you are using the 
current version of the HiveCli (though that may also be made more client 
serverish in the future).

To me though, storing all this meta information in the metastore through the 

create function .. command 

would be able to address both those issues...

Thoughts?


> FunctionRegistry should allow loading UDFs and UDAFs from property file
> -----------------------------------------------------------------------
>
>                 Key: HIVE-309
>                 URL: https://issues.apache.org/jira/browse/HIVE-309
>             Project: Hadoop Hive
>          Issue Type: Improvement
>          Components: Query Processor
>            Reporter: Richard Lee
>            Assignee: Richard Lee
>         Attachments: hive-external-functions-2.diff, 
> hive-external-functions.diff, hive-external-functions2.diff, 
> hive-external-functions3.diff, hive-external-functions4.diff
>
>
> FunctionRegistry.java hard code all UDF, UDAF definitions in a static 
> initializer.  There is no way to add new functions without directly modifying 
> this file.  
> FunctionRegistry SHOULD look for a property file in which new functions and 
> their implementations can be specified.  This will allow third parties to 
> extend hive without maintaining patches against the codebase. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to