You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2017/05/21 17:46:04 UTC
[jira] [Resolved] (CALCITE-1293) Bad code generated when argument
to COUNT(DISTINCT) is a GROUP BY column
[ https://issues.apache.org/jira/browse/CALCITE-1293?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Julian Hyde resolved CALCITE-1293.
----------------------------------
Resolution: Fixed
Fix Version/s: 1.13.0
Fixed in http://git-wip-us.apache.org/repos/asf/calcite/commit/2ddff7a5. AggregateExpandDistinctAggregatesRule was getting field offsets wrong when there was no indicator.
> Bad code generated when argument to COUNT(DISTINCT) is a GROUP BY column
> ------------------------------------------------------------------------
>
> Key: CALCITE-1293
> URL: https://issues.apache.org/jira/browse/CALCITE-1293
> Project: Calcite
> Issue Type: Bug
> Reporter: Julian Hyde
> Assignee: Julian Hyde
> Fix For: 1.13.0
>
>
> There is a code generation error when argument to {{COUNT(DISTINCT ...)}} is a column in the {{GROUP BY}} clause. For example,
> {code}
> select count(distinct deptno) as cdd, count(*) as c
> from emp
> group by deptno
> {code}
> generates code that is invalid ({{!}} operator applied to a {{long}} value):
> {noformat}
> public Object current() {
> final Object[] current = (Object[]) inputEnumerator.current();
> return new Object[] {
> current[0],
> current[1],
> !org.apache.calcite.runtime.SqlFunctions.toLong(current[1])};
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)