You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "hongbin ma (JIRA)" <ji...@apache.org> on 2016/12/15 12:11:58 UTC
[jira] [Updated] (CALCITE-1540) window function does not support
multiple partition columns
[ https://issues.apache.org/jira/browse/CALCITE-1540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
hongbin ma updated CALCITE-1540:
--------------------------------
Attachment: 0001-CALCITE-1540-window-function-does-not-support-multip.patch
patch attached. Since only no-parameter constructor exists for SyntheticRecordType:
{quote}
org.apache.calcite.adapter.enumerable.EnumerableRelImplementor#implementRoot
// Here a constructor without parameter is used because the generated
// code could cause error if number of fields is too large.
{quote}
I have to manually assign each field value.
Had little experience on modifying Calcite's source code, please help to review.
BTW, where should I add more test case queries? I assume there should be a list of test queries to run on both Calcite and another DB, so that execution correctness can be ensured via comparing.
> window function does not support multiple partition columns
> -----------------------------------------------------------
>
> Key: CALCITE-1540
> URL: https://issues.apache.org/jira/browse/CALCITE-1540
> Project: Calcite
> Issue Type: Bug
> Affects Versions: 1.10.0
> Reporter: hongbin ma
> Assignee: Julian Hyde
> Attachments: 0001-CALCITE-1540-window-function-does-not-support-multip.patch
>
>
> When I add multiple partition columns to a window function:
> {code:xml}
> @Test public void testSelect() throws SQLException {
> checkSql("model", "select NAME,DEPTNO,count(*) over (partition by NAME,DEPTNO) from EMPS");
> }
> {code}
> Following exception is thrown:
> java.sql.SQLException: Error while executing SQL "select NAME,DEPTNO,count(*) over (partition by NAME,DEPTNO) from EMPS": Error while compiling generated Java code:
> However the document from calcite.apache.org/docs/reference.html states multiple partition columns should be allowed:
> {code}
> windowSpec:
> [ windowName ]
> '('
> [ ORDER BY orderItem [, orderItem ]* ]
> [ PARTITION BY expression [, expression ]* ]
> [
> RANGE numericOrIntervalExpression { PRECEDING | FOLLOWING }
> | ROWS numericExpression { PRECEDING | FOLLOWING }
> ]
> ')'
> {code}
> After searching it seems no one is reporting the same issue. I'm opening this JIAR as a placeholder, will try to fix this issue
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)