[
https://issues.apache.org/jira/browse/CALCITE-4036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17120830#comment-17120830
]
Vova Vysotskyi commented on CALCITE-4036:
-----------------------------------------
Such plan was obtained because AggregateRemoveRule was applied. In 1.23 was
changed the order of rules application, so this rule is applying before the
{{SemiJoinRule}}, and it makes aggregate rel node non-applicable for rules.
> Allow applying SemiJoinRule to join without aggregate below
> -----------------------------------------------------------
>
> Key: CALCITE-4036
> URL: https://issues.apache.org/jira/browse/CALCITE-4036
> Project: Calcite
> Issue Type: Improvement
> Reporter: Vova Vysotskyi
> Assignee: Vova Vysotskyi
> Priority: Major
>
> The current implementation of {{SemiJoinRule}} can be applied for rel nodes
> where the right input of join is aggregate, but it theoretically can be
> applied for the case when there is no aggregate, but right joint input
> returns column which has only unique values. Column uniqueness may be checked
> using {{BuiltInMetadata.ColumnUniqueness}} statistics.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)