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

Zoltan Haindrich resolved HIVE-24072.
-------------------------------------
    Fix Version/s: 4.0.0
       Resolution: Fixed

pushed to master. Thank you Jesus for reviewing the changes!

> HiveAggregateJoinTransposeRule may try to create an invalid transformation
> --------------------------------------------------------------------------
>
>                 Key: HIVE-24072
>                 URL: https://issues.apache.org/jira/browse/HIVE-24072
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Zoltan Haindrich
>            Assignee: Zoltan Haindrich
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0
>
>          Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> {code}
> java.lang.AssertionError: 
> Cannot add expression of different type to set:
> set type is RecordType(INTEGER NOT NULL o_orderkey, DECIMAL(10, 0) 
> o_totalprice, DATE o_orderdate, INTEGER NOT NULL c_custkey, VARCHAR(25) 
> CHARACTER SET "UTF-16LE" c_name, DOUBLE $f5) NOT NULL
> expression type is RecordType(INTEGER NOT NULL o_orderkey, INTEGER NOT NULL 
> o_custkey, DECIMAL(10, 0) o_totalprice, DATE o_orderdate, INTEGER NOT NULL 
> c_custkey, DOUBLE $f1) NOT NULL
> set is rel#567:HiveAggregate.HIVE.[].any(input=HepRelVertex#490,group={2, 4, 
> 5, 6, 7},agg#0=sum($1))
> expression is HiveProject(o_orderkey=[$2], o_custkey=[$3], o_totalprice=[$4], 
> o_orderdate=[$5], c_custkey=[$6], $f1=[$1])
>   HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], 
> cost=[{2284.5 rows, 0.0 cpu, 0.0 io}])
>     HiveAggregate(group=[{0}], agg#0=[sum($1)])
>       HiveProject(l_orderkey=[$0], l_quantity=[$4])
>         HiveTableScan(table=[[tpch_0_001, lineitem]], table:alias=[l])
>     HiveJoin(condition=[=($0, $6)], joinType=[inner], algorithm=[none], 
> cost=[{1.0000000000009115E15 rows, 0.0 cpu, 0.0 io}])
>       HiveJoin(condition=[=($4, $1)], joinType=[inner], algorithm=[none], 
> cost=[{1650.0 rows, 0.0 cpu, 0.0 io}])
>         HiveProject(o_orderkey=[$0], o_custkey=[$1], o_totalprice=[$3], 
> o_orderdate=[$4])
>           HiveTableScan(table=[[tpch_0_001, orders]], table:alias=[orders])
>         HiveProject(c_custkey=[$0], c_name=[$1])
>           HiveTableScan(table=[[tpch_0_001, customer]], 
> table:alias=[customer])
>       HiveProject($f0=[$0])
>         HiveFilter(condition=[>($1, 3E2)])
>           HiveAggregate(group=[{0}], agg#0=[sum($4)])
>             HiveTableScan(table=[[tpch_0_001, lineitem]], 
> table:alias=[lineitem])
>       at 
> org.apache.calcite.plan.RelOptUtil.verifyTypeEquivalence(RelOptUtil.java:383)
>       at 
> org.apache.calcite.plan.hep.HepRuleCall.transformTo(HepRuleCall.java:57)
>       at 
> org.apache.calcite.plan.RelOptRuleCall.transformTo(RelOptRuleCall.java:236)
>       at 
> org.apache.hadoop.hive.ql.optimizer.calcite.rules.HiveAggregateJoinTransposeRule.onMatch(HiveAggregateJoinTransposeRule.java:300)
> {code}



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

Reply via email to