You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Jesus Camacho Rodriguez (JIRA)" <ji...@apache.org> on 2015/04/21 15:24:59 UTC
[jira] [Updated] (HIVE-10416) CBO (Calcite Return Path): Fix return
columns if Sort operator is on top of plan returned by Calcite
[ https://issues.apache.org/jira/browse/HIVE-10416?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jesus Camacho Rodriguez updated HIVE-10416:
-------------------------------------------
Attachment: HIVE-10416.patch
[~ashutoshc], could you take a look? Thanks!
> CBO (Calcite Return Path): Fix return columns if Sort operator is on top of plan returned by Calcite
> ----------------------------------------------------------------------------------------------------
>
> Key: HIVE-10416
> URL: https://issues.apache.org/jira/browse/HIVE-10416
> Project: Hive
> Issue Type: Sub-task
> Components: CBO
> Reporter: Jesus Camacho Rodriguez
> Assignee: Jesus Camacho Rodriguez
> Fix For: 1.2.0
>
> Attachments: HIVE-10416.patch
>
>
> When return path is on, if the plan's top operator is a Sort, we need to produce a SelectOp that will output exactly the columns needed by the FS.
> The following query reproduces the problem:
> {noformat}
> select cbo_t3.c_int, c, count(*)
> from (select key as a, c_int+1 as b, sum(c_int) as c from cbo_t1
> where (cbo_t1.c_int + 1 >= 0) and (cbo_t1.c_int > 0 or cbo_t1.c_float >= 0)
> group by c_float, cbo_t1.c_int, key order by a) cbo_t1
> join (select key as p, c_int+1 as q, sum(c_int) as r from cbo_t2
> where (cbo_t2.c_int + 1 >= 0) and (cbo_t2.c_int > 0 or cbo_t2.c_float >= 0)
> group by c_float, cbo_t2.c_int, key order by q/10 desc, r asc) cbo_t2 on cbo_t1.a=p
> join cbo_t3 on cbo_t1.a=key
> where (b + cbo_t2.q >= 0) and (b > 0 or c_int >= 0)
> group by cbo_t3.c_int, c order by cbo_t3.c_int+c desc, c;
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)