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

Jesus Camacho Rodriguez updated HIVE-23884:
-------------------------------------------
    Summary: SemanticAnalyzer exception when addressing field with table name 
in group by  (was: SemanticAnalyze exception when addressing field with table 
name in group by)

> SemanticAnalyzer exception when addressing field with table name in group by
> ----------------------------------------------------------------------------
>
>                 Key: HIVE-23884
>                 URL: https://issues.apache.org/jira/browse/HIVE-23884
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Rajesh Balamohan
>            Priority: Major
>
> {noformat}
> explain cbo 
> select  `item`.`i_item_id`,
> `store`.`s_state`, grouping(s_state) `g_state` from  
> `tpcds_bin_partitioned_orc_10000`.`store`, 
> `tpcds_bin_partitioned_orc_10000`.`item`
> where `store`.`s_state` in ('AL','IN', 'SC', 'NY', 'OH', 'FL')
> group by rollup (`item`.`i_item_id`, `s_state`)
> CBO PLAN:
> HiveProject(i_item_id=[$0], s_state=[$1], g_state=[grouping($2, 0:BIGINT)])
>   HiveAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {}]], 
> GROUPING__ID=[GROUPING__ID()])
>     HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not 
> available])
>       HiveProject(i_item_id=[$1])
>         HiveTableScan(table=[[tpcds_bin_partitioned_orc_10000, item]], 
> table:alias=[item])
>       HiveProject(s_state=[$24])
>         HiveFilter(condition=[IN($24, _UTF-16LE'AL', _UTF-16LE'IN', 
> _UTF-16LE'SC', _UTF-16LE'NY', _UTF-16LE'OH', _UTF-16LE'FL')])
>           HiveTableScan(table=[[tpcds_bin_partitioned_orc_10000, store]], 
> table:alias=[store])
> {noformat}
>  
> However, adding fully qualified field name "*`store`.`s_state`*"" in the 
> second rollup throws SemanticAnalyzer exception
>  
> {noformat}
> explain cbo 
> select  `item`.`i_item_id`,
> `store`.`s_state`, grouping(s_state) `g_state` from  
> `tpcds_bin_partitioned_orc_10000`.`store`, 
> `tpcds_bin_partitioned_orc_10000`.`item`
> where `store`.`s_state` in ('AL','IN', 'SC', 'NY', 'OH', 'FL')
> group by rollup (`item`.`i_item_id`, `store`.`s_state`)
> Error: Error while compiling statement: FAILED: RuntimeException [Error 
> 10409]: Expression in GROUPING function not present in GROUP BY 
> (state=42000,code=10409)
> {noformat}
> Exception: based on 3.x; but mostly should occur in master as well.
> Related ticket: https://issues.apache.org/jira/browse/HIVE-15996
> {noformat}
> Caused by: java.lang.RuntimeException: Expression in GROUPING function not 
> present in GROUP BY
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$2.post(SemanticAnalyzer.java:3296)
>  ~[hive-exec-3.1xyz]
>       at org.antlr.runtime.tree.TreeVisitor.visit(TreeVisitor.java:66) 
> ~[antlr-runtime-3.5.2.jar:3.5.2]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.rewriteGroupingFunctionAST(SemanticAnalyzer.java:3305)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genSelectPlan(SemanticAnalyzer.java:4616)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genSelectPlan(SemanticAnalyzer.java:4392)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPostGroupByBodyPlan(SemanticAnalyzer.java:11026)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genBodyPlan(SemanticAnalyzer.java:10965)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyzer.java:11894)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyzer.java:11764)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genOPTree(SemanticAnalyzer.java:12568)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.CalcitePlanner.genOPTree(CalcitePlanner.java:707)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:12669)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePlanner.java:426)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:288)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.ExplainSemanticAnalyzer.analyzeInternal(ExplainSemanticAnalyzer.java:170)
>  ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:288)
>  ~[hive-exec-3.1xyz]
>       at org.apache.hadoop.hive.ql.Compiler.analyze(Compiler.java:221) 
> ~[hive-exec-3.1xyz]
>       at org.apache.hadoop.hive.ql.Compiler.compile(Compiler.java:104) 
> ~[hive-exec-3.1xyz]
>       at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:188) 
> ~[hive-exec-3.1xyz]
>       at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:598) 
> ~[hive-exec-3.1xyz]
>       at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:544) 
> ~[hive-exec-3.1xyz]
>       at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:538) 
> ~[hive-exec-3.1xyz]
>       at 
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:127)
>  ~[hive-exec-3.1xyz
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to