[
https://issues.apache.org/jira/browse/CALCITE-3428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde resolved CALCITE-3428.
----------------------------------
Fix Version/s: 1.22.0
Resolution: Fixed
Fixed in
[f9103e6|https://github.com/apache/calcite/commit/f9103e6079f75e3d6b3419d01690447ff0a14265];
thanks for the PR, [[email protected]]!
In a few of the tests, I changed ImmutableBitSet.range(1, 2) to
ImmutableBitSet.of(1) because it means the same and is less confusing.
> Refine RelMdColumnUniqueness for Filter by considering constant columns
> -----------------------------------------------------------------------
>
> Key: CALCITE-3428
> URL: https://issues.apache.org/jira/browse/CALCITE-3428
> Project: Calcite
> Issue Type: Improvement
> Reporter: jin xing
> Assignee: jin xing
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.22.0
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> AggregateRemoveRule fails to remove the top Aggregate for below SQL
> {code:java}
> select mgr, sum(sum_sal)
> from
> (select mgr, deptno, sum(sal) sum_sal
> from sales.emp
> group by mgr, deptno)
> where deptno=100
> group by mgr
> {code}
> The reason is that RelMdColumnUniqueness doesn't take the filtering condition
> into consideration when checking uniqueness of columns.
> This PR proposes to refine RelMdColumnUniqueness for Filter, thus to
> strengthen AggregateRemoveRule.
> Resolving this Jira will help a lot for CALCITE-3334 by removing the
> redundant compensation Aggregate when doing materialization matching
--
This message was sent by Atlassian Jira
(v8.3.4#803005)