You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Chinna Rao Lalam (JIRA)" <ji...@apache.org> on 2011/08/29 13:47:37 UTC

[jira] [Updated] (HIVE-2182) Avoid null pointer exception when executing UDF

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

Chinna Rao Lalam updated HIVE-2182:
-----------------------------------

    Status: Patch Available  (was: Open)

> Avoid null pointer exception when executing UDF
> -----------------------------------------------
>
>                 Key: HIVE-2182
>                 URL: https://issues.apache.org/jira/browse/HIVE-2182
>             Project: Hive
>          Issue Type: Bug
>          Components: Query Processor
>    Affects Versions: 0.5.0, 0.8.0
>         Environment: Hadoop 0.20.1, Hive0.8.0 and SUSE Linux Enterprise Server 10 SP2 (i586) - Kernel 2.6.16.60-0.21-smp (5)
>            Reporter: Chinna Rao Lalam
>            Assignee: Chinna Rao Lalam
>         Attachments: HIVE-2182.patch
>
>
> For using UDF's executed following steps
> {noformat}
> add jar /home/udf/udf.jar;
> create temporary function grade as 'udf.Grade';
> select m.userid,m.name,grade(m.maths,m.physics,m.chemistry) from marks m;
> {noformat}
> But from the above steps if we miss the first step (add jar) and execute remaining steps
> {noformat}
> create temporary function grade as 'udf.Grade';
> select m.userid,m.name,grade(m.maths,m.physics,m.chemistry) from marks m;
> {noformat}
> In tasktracker it is throwing this exception
> {noformat}
> Caused by: java.lang.RuntimeException: Map operator initialization failed
> 		 at org.apache.hadoop.hive.ql.exec.ExecMapper.configure(ExecMapper.java:121)
> 		 ... 18 more
> Caused by: java.lang.RuntimeException: java.lang.NullPointerException
> 		 at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:115)
> 		 at org.apache.hadoop.hive.ql.udf.generic.GenericUDFBridge.initialize(GenericUDFBridge.java:126)
> 		 at org.apache.hadoop.hive.ql.exec.ExprNodeGenericFuncEvaluator.initialize(ExprNodeGenericFuncEvaluator.java:133)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initEvaluators(Operator.java:878)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initEvaluatorsAndReturnStruct(Operator.java:904)
> 		 at org.apache.hadoop.hive.ql.exec.SelectOperator.initializeOp(SelectOperator.java:60)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:357)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:433)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:389)
> 		 at org.apache.hadoop.hive.ql.exec.TableScanOperator.initializeOp(TableScanOperator.java:133)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:357)
> 		 at org.apache.hadoop.hive.ql.exec.MapOperator.initializeOp(MapOperator.java:444)
> 		 at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:357)
> 		 at org.apache.hadoop.hive.ql.exec.ExecMapper.configure(ExecMapper.java:98)
> 		 ... 18 more
> Caused by: java.lang.NullPointerException
> 		 at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768)
> 		 at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:107)
> 		 ... 31 more
> {noformat}
> Instead of null pointer exception it should throw meaning full exception

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira