cannot create temporary udf dynamically, with a ClassNotFoundException 
-----------------------------------------------------------------------

                 Key: HIVE-322
                 URL: https://issues.apache.org/jira/browse/HIVE-322
             Project: Hadoop Hive
          Issue Type: Bug
          Components: Query Processor
    Affects Versions: 0.3.0
            Reporter: Min Zhou
            Priority: Blocker


CREATE TEMPORARY FUNCTION strlen AS 'com.taobao.hadoop.hive.udf.UdfStringLength'
I found the ClassLoader cannot load my UDF when doing FunctionTask, because the 
ClassLoader hasnot append its classpaths on-the-fly yet.
The ExecDriver' s addToClassPath(String[] newPaths) method is the only entry 
for ClassLoader dynamically append its classhpaths (besides hadoop's 
GenericOptionsParser).
But that function wasnot called before FunctionTask getting my UDF class by 
class name. I think this is the reason why I came across that failure.

scenario description:

I set a peroperty in hive-site.xml to configure the classpath of my udf. 
<property>
  <name>hive.aux.jars.path</name>
  <value>/home/hadoop/hdpsoft/hive-auxs/zhoumin.jar</value>
</property>

but failed to register it with a ClassNotFoundException when creating udf 
through the sql command.

I'll patch that soon.



-- 
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