[
https://issues.apache.org/jira/browse/CALCITE-4818?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17430496#comment-17430496
]
Xurenhe commented on CALCITE-4818:
----------------------------------
[~tledkov-gridgain]Â Thanks for your reply.
I have debugged related code again.
I think it's not unnecessary for you to add more test, because the pattern of
your test case has contained what I want.
Forgive me for my carelessness.:)
> AggregateExpandDistinctAggregatesRule must infer correct data type for top
> aggregate calls
> ------------------------------------------------------------------------------------------
>
> Key: CALCITE-4818
> URL: https://issues.apache.org/jira/browse/CALCITE-4818
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.27.0
> Reporter: Taras Ledkov
> Assignee: Taras Ledkov
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.28.0
>
>
> When SUM data type derivation is more complex, e.g.:
> {code}
> SUM(TINYINT | SMALLINT | INTEGER) -> BIGINT
> SUM(BIGINT) -> DECIMAL
> {code}
> The rule {{AggregateExpandDistinctAggregatesRule}} creates the top aggregate
> calls with invalid type for not distinct calls.
> e.g. {{SELECT SUM(comm), SUM(DISTINCT comm) FROM emp}}
> Please take a look at the reproducer in the PR.
> *Proposed fix:* infer type of top aggregates by input row type. Pass
> {{null}} type to the call method {{AggregateCall#create}}.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)