You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Hari Sankar Sivarama Subramaniyan (JIRA)" <ji...@apache.org> on 2016/08/03 23:16:20 UTC

[jira] [Commented] (HIVE-14396) CBO: Calcite Operator To Hive Operator (Calcite Return Path): TestCliDriver count.q failure

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

Hari Sankar Sivarama Subramaniyan commented on HIVE-14396:
----------------------------------------------------------

Looks like a duplicate of HIVE-12803.

> CBO: Calcite Operator To Hive Operator (Calcite Return Path): TestCliDriver count.q failure
> -------------------------------------------------------------------------------------------
>
>                 Key: HIVE-14396
>                 URL: https://issues.apache.org/jira/browse/HIVE-14396
>             Project: Hive
>          Issue Type: Sub-task
>          Components: CBO
>            Reporter: Vineet Garg
>            Assignee: Vineet Garg
>
> Currently there are three different failures
> Set hive.cbo.returnpath.hiveop=true for all cases.
> 1) First case is wrong result for following query
> {code:title=failure 1 Wrong result}
> explain select count(1), count(*), count(a), count(b), count(c), count(d), count(distinct a), count(distinct b), count(distinct c), count(distinct d), count(distinct a,b), count(distinct b,c), count(distinct c,d), count(distinct a,d), count(distinct a,c), count(distinct b,d), count(distinct a,b,c), count(distinct b,c,d), count(distinct a,c,d), count(distinct a,b,d), count(distinct a,b,c,d) from abcd;
> {code}
> This occurs due to a bug in HiveCalciteUtil.getExprNodes. While looking for corresponding expression for a aggregate function's argument wrong index is being used.
> 2) Out of bound exception for following
> {code}
> set hive.map.aggr=false
> explain select count(1), count(*), count(a), count(b), count(c), count(d), count(distinct a), count(distinct b), count(distinct c), count(distinct d), count(distinct a,b), count(distinct b,c), count(distinct c,d), count(distinct a,d), count(distinct a,c), count(distinct b,d), count(distinct a,b,c), count(distinct b,c,d), count(distinct a,c,d), count(distinct a,b,d), count(distinct a,b,c,d) from abcd;
> {code}
> The above happens while converting Calcite Aggregation to Hive's group by operator.
> 3) Once the above case with exception is fixed same query with hive.map.aggr=false give wrong results. Problem in this case is that while creating expression for aggregate function's argument we end up with wrong column info from underlying reduce sink operator. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)