You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Jesus Camacho Rodriguez (JIRA)" <ji...@apache.org> on 2015/04/21 15:20:00 UTC

[jira] [Created] (HIVE-10416) CBO (Calcite Return Path): Fix return columns if Sort operator is on top of plan returned by Calcite

Jesus Camacho Rodriguez created HIVE-10416:
----------------------------------------------

             Summary: 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
            Reporter: Jesus Camacho Rodriguez
            Assignee: Jesus Camacho Rodriguez


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)