[jira] [Commented] (KYLIN-2538) extract(MONTH from CURRENT_DATE) cannot be selected as a column in sql

2017-04-23 Thread Dong Li (JIRA)

[ 
https://issues.apache.org/jira/browse/KYLIN-2538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15980370#comment-15980370
 ] 

Dong Li commented on KYLIN-2538:


Yes it's on CI cubes. But actually CURRENT_DATE is a const value to return 
current date, for example, "select extract(MONTH from CURRENT_DATE)" will 
return right result, but will fail when other column/aggr func appears in the 
SQL.
Thanks Roger. I will add more description in this JIRA to avoid 
misunderstanding.

> extract(MONTH from CURRENT_DATE) cannot be selected as a column in sql
> --
>
> Key: KYLIN-2538
> URL: https://issues.apache.org/jira/browse/KYLIN-2538
> Project: Kylin
>  Issue Type: Bug
>  Components: Query Engine
>Reporter: Dong Li
>Assignee: liyang
>
> This SQL will fail with exceptions:
> select extract(MONTH from CURRENT_DATE), count(*) from test_kylin_fact
> Error message:
> Error while executing SQL "select extract(MONTH from CURRENT_DATE), count(*) 
> from test_kylin_fact LIMIT 5": No TblColRef found in 
> EXTRACT_DATE(FLAG(MONTH), Reinterpret(CURRENT_DATE))
> Stacktrace:
> Caused by: java.lang.IllegalStateException: No TblColRef found in 
> EXTRACT_DATE(FLAG(MONTH), Reinterpret(CURRENT_DATE))
> at 
> org.apache.kylin.query.relnode.OLAPProjectRel.buildColumnRowType(OLAPProjectRel.java:132)
> at 
> org.apache.kylin.query.relnode.OLAPProjectRel.implementOLAP(OLAPProjectRel.java:117)
> at 
> org.apache.kylin.query.relnode.OLAPRel$OLAPImplementor.visitChild(OLAPRel.java:83)
> at 
> org.apache.kylin.query.relnode.OLAPLimitRel.implementOLAP(OLAPLimitRel.java:75)
> at 
> org.apache.kylin.query.relnode.OLAPRel$OLAPImplementor.visitChild(OLAPRel.java:83)
> at 
> org.apache.kylin.query.relnode.OLAPToEnumerableConverter.implement(OLAPToEnumerableConverter.java:85)
> at 
> org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:108)
> at 
> org.apache.calcite.adapter.enumerable.EnumerableInterpretable.toBindable(EnumerableInterpretable.java:92)
> at 
> org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt.implement(CalcitePrepareImpl.java:1248)
> at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:306)
> at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:203)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (KYLIN-2538) extract(MONTH from CURRENT_DATE) cannot be selected as a column in sql

2017-04-23 Thread Roger Shi (JIRA)

[ 
https://issues.apache.org/jira/browse/KYLIN-2538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15980337#comment-15980337
 ] 

Roger Shi commented on KYLIN-2538:
--

I suppose this query targets CI Data Model and Cube. If yes, CURRENT_DATE is 
not in the table. And count(*) should not in the query.
The refined query is "select extract(MONTH from CAL_DT) from test_kylin_fact" 
and it returns the expected result. Please let me know if I miss anything.

> extract(MONTH from CURRENT_DATE) cannot be selected as a column in sql
> --
>
> Key: KYLIN-2538
> URL: https://issues.apache.org/jira/browse/KYLIN-2538
> Project: Kylin
>  Issue Type: Bug
>  Components: Query Engine
>Reporter: Dong Li
>Assignee: liyang
>
> This SQL will fail with exceptions:
> select extract(MONTH from CURRENT_DATE), count(*) from test_kylin_fact
> Error message:
> Error while executing SQL "select extract(MONTH from CURRENT_DATE), count(*) 
> from test_kylin_fact LIMIT 5": No TblColRef found in 
> EXTRACT_DATE(FLAG(MONTH), Reinterpret(CURRENT_DATE))
> Stacktrace:
> Caused by: java.lang.IllegalStateException: No TblColRef found in 
> EXTRACT_DATE(FLAG(MONTH), Reinterpret(CURRENT_DATE))
> at 
> org.apache.kylin.query.relnode.OLAPProjectRel.buildColumnRowType(OLAPProjectRel.java:132)
> at 
> org.apache.kylin.query.relnode.OLAPProjectRel.implementOLAP(OLAPProjectRel.java:117)
> at 
> org.apache.kylin.query.relnode.OLAPRel$OLAPImplementor.visitChild(OLAPRel.java:83)
> at 
> org.apache.kylin.query.relnode.OLAPLimitRel.implementOLAP(OLAPLimitRel.java:75)
> at 
> org.apache.kylin.query.relnode.OLAPRel$OLAPImplementor.visitChild(OLAPRel.java:83)
> at 
> org.apache.kylin.query.relnode.OLAPToEnumerableConverter.implement(OLAPToEnumerableConverter.java:85)
> at 
> org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:108)
> at 
> org.apache.calcite.adapter.enumerable.EnumerableInterpretable.toBindable(EnumerableInterpretable.java:92)
> at 
> org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt.implement(CalcitePrepareImpl.java:1248)
> at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:306)
> at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:203)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)