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

Sergey Shelukhin commented on HIVE-14139:
-----------------------------------------

The code to not register it to session goes all the way to the original session 
registry patch.
I think the reason might be performance - we don't want to load the function 
resource for all the functions from metastore, which might be a lot of 
functions. It may be loaded on first use, not sure. I think we should handle at 
remove time rather than loading all resources before they are needed...

> NPE dropping permanent function
> -------------------------------
>
>                 Key: HIVE-14139
>                 URL: https://issues.apache.org/jira/browse/HIVE-14139
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Rui Li
>            Assignee: Rui Li
>         Attachments: HIVE-14139.1.patch
>
>
> To reproduce:
> 1. Start a CLI session and create a permanent function.
> 2. Exit current CLI session.
> 3. Start a new CLI session and drop the function.
> Stack trace:
> {noformat}
> FAILED: error during drop function: java.lang.NullPointerException
>       at 
> org.apache.hadoop.hive.ql.exec.Registry.removePersistentFunctionUnderLock(Registry.java:513)
>       at 
> org.apache.hadoop.hive.ql.exec.Registry.unregisterFunction(Registry.java:501)
>       at 
> org.apache.hadoop.hive.ql.exec.FunctionRegistry.unregisterPermanentFunction(FunctionRegistry.java:1532)
>       at 
> org.apache.hadoop.hive.ql.exec.FunctionTask.dropPermanentFunction(FunctionTask.java:228)
>       at 
> org.apache.hadoop.hive.ql.exec.FunctionTask.execute(FunctionTask.java:95)
>       at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:197)
>       at 
> org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:100)
>       at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1860)
>       at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1564)
>       at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1316)
>       at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1085)
>       at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1073)
>       at 
> org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:232)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to