You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "He Yongqiang (Assigned) (JIRA)" <ji...@apache.org> on 2011/10/21 19:32:32 UTC

[jira] [Assigned] (HIVE-1741) HiveInputFormat.readFields should print the cause when there's an exception

     [ https://issues.apache.org/jira/browse/HIVE-1741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

He Yongqiang reassigned HIVE-1741:
----------------------------------

    Assignee: Ashutosh Chauhan
    
> HiveInputFormat.readFields should print the cause when there's an exception
> ---------------------------------------------------------------------------
>
>                 Key: HIVE-1741
>                 URL: https://issues.apache.org/jira/browse/HIVE-1741
>             Project: Hive
>          Issue Type: Improvement
>    Affects Versions: 0.7.0
>            Reporter: Jean-Daniel Cryans
>            Assignee: Ashutosh Chauhan
>            Priority: Trivial
>         Attachments: hive-1741.patch
>
>
> Minor annoyance when it comes to debugging using exotic input formats, currently if you do something wrong trying to get the HBase handler working you get something like this:
> {noformat}
> java.io.IOException: Cannot create an instance of InputSplit class = org.apache.hadoop.hive.hbase.HBaseSplit:org.apache.hadoop.hive.hbase.HBaseSplit
> 	at org.apache.hadoop.hive.ql.io.HiveInputFormat$HiveInputSplit.readFields(HiveInputFormat.java:147)
> 	at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:333)
> 	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
> 	at org.apache.hadoop.mapred.Child.main(Child.java:170)
> {noformat}
> It could be a lot more helpful to see the cause, in my case:
> {noformat}
> java.io.IOException: Cannot create an instance of InputSplit class = org.apache.hadoop.hive.hbase.HBaseSplit:org.apache.hadoop.hive.hbase.HBaseSplit
> 	at org.apache.hadoop.hive.ql.io.HiveInputFormat$HiveInputSplit.readFields(HiveInputFormat.java:147)
> 	at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:333)
> 	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
> 	at org.apache.hadoop.mapred.Child.main(Child.java:170)
> Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.hbase.HBaseSplit
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
> ...
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:247)
> 	at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:907)
> 	at org.apache.hadoop.hive.ql.io.HiveInputFormat$HiveInputSplit.readFields(HiveInputFormat.java:144)
> {noformat}
> It's just a matter of doing this in readFields:
> {code}
> -            + inputSplitClassName + ":" + e.getMessage());
> +            + inputSplitClassName + ":" + e.getMessage(), e);
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira