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

Ning Zhang commented on HIVE-1901:
----------------------------------

This bug is related to the unnecessary columns in the subquery (db.value and 
nt.hr). It works if removing these columns. 

> ColumnPruner bug in case of LATERAL VIEW and UDTF
> -------------------------------------------------
>
>                 Key: HIVE-1901
>                 URL: https://issues.apache.org/jira/browse/HIVE-1901
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Ning Zhang
>
> The following query 
> {code}
>  EXPLAIN SELECT stat FROM (
> SELECT nt.value AS n, dt.value AS d_evt, nt.hr as hr
> FROM srcpart nt
> JOIN srcpart dt
> ON (nt.ds='2008-04-08' AND dt.ds='2008-04-08' AND nt.key=dt.key)
> ) joined
> LATERAL VIEW explode(array(n)) s AS stat;
> {code}
> throws an exception:
> FAILED: Hive Internal Error: java.lang.ArrayIndexOutOfBoundsException(-1)
> java.lang.ArrayIndexOutOfBoundsException: -1
>       at java.util.ArrayList.get(ArrayList.java:324)
>       at 
> org.apache.hadoop.hive.ql.optimizer.ColumnPrunerProcFactory$ColumnPrunerSelectProc.process(ColumnPrunerProcFactory.java:398)
>       at 
> org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher.dispatch(DefaultRuleDispatcher.java:89)
>       at 
> org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatch(DefaultGraphWalker.java:88)
>       at 
> org.apache.hadoop.hive.ql.optimizer.ColumnPruner$ColumnPrunerWalker.walk(ColumnPruner.java:143)
>       at 
> org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.startWalking(DefaultGraphWalker.java:102)
>       at 
> org.apache.hadoop.hive.ql.optimizer.ColumnPruner.transform(ColumnPruner.java:106)
>       at 
> org.apache.hadoop.hive.ql.optimizer.Optimizer.optimize(Optimizer.java:85)
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:6606)
>       at 
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:238)
>       at 
> org.apache.hadoop.hive.ql.parse.ExplainSemanticAnalyzer.analyzeInternal(ExplainSemanticAnalyzer.java:48)
>       at 
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:238)
>       at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:335)
>       at org.apache.hadoop.hive.ql.Driver.run(Driver.java:686)
>       at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:161)
>       at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:235)
>       at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:450)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at org.apache.hadoop.util.RunJar.main(RunJar.java:156)

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