kylin-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "yiming.xu (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (KYLIN-3281) OlapProjectRule can't normal working with projectrel[input=sortrel]
Date Fri, 09 Mar 2018 05:48:00 GMT

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

yiming.xu updated KYLIN-3281:
-----------------------------
    Description: 
for queries like:
select sum("count") from (SELECT LSTG_FORMAT_NAME ,  COUNT(*) AS "count" FROM TEST_KYLIN_FACT
 GROUP BY  "LSTG_FORMAT_NAME" ORDER BY "count" DESC) as a
the expected logical plan after volcano is:

{code:java}
OLAPToEnumerableConverter
  OLAPLimitRel(ctx=[], fetch=[50000])
    OLAPAggregateRel(group=[{}], EXPR$0=[SUM($0)], ctx=[])
      OLAPProjectRel(count=[$1], ctx=[])
        OLAPSortRel(sort0=[$1], dir0=[DESC], ctx=[])
          OLAPAggregateRel(group=[{0}], count=[COUNT()], ctx=[])
            OLAPProjectRel(LSTG_FORMAT_NAME=[$3], ctx=[])
              OLAPTableScan(table=[[DEFAULT, TEST_KYLIN_FACT]], ctx=[], fields=[[0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]])
{code}

however the actual is:
{code:java}
EnumerableLimit(fetch=[50000])
  EnumerableAggregate(group=[{}], EXPR$0=[SUM($0)])
    EnumerableCalc(expr#0..1=[{inputs}], count=[$t1])
      EnumerableSort(sort0=[$1], dir0=[DESC])
        EnumerableAggregate(group=[{0}], count=[COUNT()])
          OLAPToEnumerableConverter
            OLAPProjectRel(LSTG_FORMAT_NAME=[$3], ctx=[])
              OLAPTableScan(table=[[DEFAULT, TEST_KYLIN_FACT]], ctx=[], fields=[[0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]])
{code}
 VolcanoPlanner apply olapprojectrule to logicalproject,we convert child node should child
traitset not current proejct traitset.


  was:
for queries like:
select sum("count") from (SELECT LSTG_FORMAT_NAME ,  COUNT(*) AS "count" FROM TEST_KYLIN_FACT
 GROUP BY  "LSTG_FORMAT_NAME" ORDER BY "count" DESC) as a
the expected logical plan after volcano is:

{code:java}
OLAPToEnumerableConverter
  OLAPLimitRel(ctx=[], fetch=[50000])
    OLAPAggregateRel(group=[{}], EXPR$0=[SUM($0)], ctx=[])
      OLAPProjectRel(count=[$1], ctx=[])
        OLAPSortRel(sort0=[$1], dir0=[DESC], ctx=[])
          OLAPAggregateRel(group=[{0}], count=[COUNT()], ctx=[])
            OLAPProjectRel(LSTG_FORMAT_NAME=[$3], ctx=[])
              OLAPTableScan(table=[[DEFAULT, TEST_KYLIN_FACT]], ctx=[], fields=[[0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]])
{code}

however the actual is:
{code:java}
EnumerableLimit(fetch=[50000])
  EnumerableAggregate(group=[{}], EXPR$0=[SUM($0)])
    EnumerableCalc(expr#0..1=[{inputs}], count=[$t1])
      EnumerableSort(sort0=[$1], dir0=[DESC])
        EnumerableAggregate(group=[{0}], count=[COUNT()])
          OLAPToEnumerableConverter
            OLAPProjectRel(LSTG_FORMAT_NAME=[$3], ctx=[])
              OLAPTableScan(table=[[DEFAULT, TEST_KYLIN_FACT]], ctx=[], fields=[[0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]])
{code}
with 
logicalprojectrel
  logicalsortrel 
apply sortrel to create projectrel can



> OlapProjectRule can't normal working with  projectrel[input=sortrel]
> --------------------------------------------------------------------
>
>                 Key: KYLIN-3281
>                 URL: https://issues.apache.org/jira/browse/KYLIN-3281
>             Project: Kylin
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: v2.3.0
>            Reporter: yiming.xu
>            Assignee: yiming.xu
>            Priority: Critical
>
> for queries like:
> select sum("count") from (SELECT LSTG_FORMAT_NAME ,  COUNT(*) AS "count" FROM TEST_KYLIN_FACT
 GROUP BY  "LSTG_FORMAT_NAME" ORDER BY "count" DESC) as a
> the expected logical plan after volcano is:
> {code:java}
> OLAPToEnumerableConverter
>   OLAPLimitRel(ctx=[], fetch=[50000])
>     OLAPAggregateRel(group=[{}], EXPR$0=[SUM($0)], ctx=[])
>       OLAPProjectRel(count=[$1], ctx=[])
>         OLAPSortRel(sort0=[$1], dir0=[DESC], ctx=[])
>           OLAPAggregateRel(group=[{0}], count=[COUNT()], ctx=[])
>             OLAPProjectRel(LSTG_FORMAT_NAME=[$3], ctx=[])
>               OLAPTableScan(table=[[DEFAULT, TEST_KYLIN_FACT]], ctx=[], fields=[[0, 1,
2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]])
> {code}
> however the actual is:
> {code:java}
> EnumerableLimit(fetch=[50000])
>   EnumerableAggregate(group=[{}], EXPR$0=[SUM($0)])
>     EnumerableCalc(expr#0..1=[{inputs}], count=[$t1])
>       EnumerableSort(sort0=[$1], dir0=[DESC])
>         EnumerableAggregate(group=[{0}], count=[COUNT()])
>           OLAPToEnumerableConverter
>             OLAPProjectRel(LSTG_FORMAT_NAME=[$3], ctx=[])
>               OLAPTableScan(table=[[DEFAULT, TEST_KYLIN_FACT]], ctx=[], fields=[[0, 1,
2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]])
> {code}
>  VolcanoPlanner apply olapprojectrule to logicalproject,we convert child node should
child traitset not current proejct traitset.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message