hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ashutosh Chauhan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-6495) TableDesc.getDeserializer() should use correct classloader when calling Class.forName()
Date Thu, 06 Mar 2014 16:10:44 GMT

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

Ashutosh Chauhan commented on HIVE-6495:
----------------------------------------

[~jdere] Looks like this need to be reuploaded for jenkins to pick it up.

> TableDesc.getDeserializer() should use correct classloader when calling Class.forName()
> ---------------------------------------------------------------------------------------
>
>                 Key: HIVE-6495
>                 URL: https://issues.apache.org/jira/browse/HIVE-6495
>             Project: Hive
>          Issue Type: Bug
>          Components: Serializers/Deserializers
>            Reporter: Jason Dere
>            Assignee: Jason Dere
>         Attachments: HIVE-6495.1.patch
>
>
> User is getting an error with the following stack trace below.  It looks like when Class.forName()
is called, it may not be using the correct class loader (JavaUtils.getClassLoader() is used
in other contexts when the loaded jar may be required).
> {noformat}
> FAILED: RuntimeException org.apache.hadoop.hive.ql.metadata.HiveException: Failed with
exception java.lang.ClassNotFoundException: my.serde.ColonSerdejava.lang.RuntimeException:
java.lang.ClassNotFoundException: my.serde.ColonSerde
>     at org.apache.hadoop.hive.ql.plan.TableDesc.getDeserializerClass(TableDesc.java:68)
>     at org.apache.hadoop.hive.ql.exec.FetchOperator.getRowInspectorFromTable(FetchOperator.java:231)
>     at org.apache.hadoop.hive.ql.exec.FetchOperator.getOutputObjectInspector(FetchOperator.java:608)
>     at org.apache.hadoop.hive.ql.exec.FetchTask.initialize(FetchTask.java:80)
>     at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:497)
>     at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:352)
>     at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:995)
>     at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1038)
>     at org.apache.hadoop.hive.ql.Driver.run(Driver.java:931)
>     at org.apache.hadoop.hive.ql.Driver.run(Driver.java:921)
>     at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:268)
>     at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:220)
>     at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:422)
>     at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:790)
>     at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:684)
>     at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:623)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke(Method.java:606)
>     at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
> Caused by: java.lang.ClassNotFoundException: my.serde.ColonSerde
>     at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>     at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>     at java.security.AccessController.doPrivileged(Native Method)
>     at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>     at java.lang.Class.forName0(Native Method)
>     at java.lang.Class.forName(Class.java:190)
>     at org.apache.hadoop.hive.ql.plan.TableDesc.getDeserializerClass(TableDesc.java:66)
>     ... 20 more
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message