[
https://issues.apache.org/jira/browse/CALCITE-3805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17040574#comment-17040574
]
Danny Chen commented on CALCITE-3805:
-------------------------------------
The RelBuilder.transform(UnaryOperator<Config>) is good at setting the config
options, but it new a fresh RelBuilder and the stack all lost. In order to use
that, i have to push in the built node from the original builder.
> Add a new method to control the agg input prune with explicit flag
> ------------------------------------------------------------------
>
> Key: CALCITE-3805
> URL: https://issues.apache.org/jira/browse/CALCITE-3805
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.22.0
> Reporter: Danny Chen
> Assignee: Danny Chen
> Priority: Major
> Fix For: 1.22.0
>
>
> This feature is introduced by CALCITE-3763, which is cool for normal group
> aggregations.
> But in Flink, we have window group aggregation, we invoke the normal
> aggregate first then construct our LogicalWindowAggregate, the window may
> have some attributes that reference the pruned columns.
> I though about how i can control the prune flexibility, but this behavior is
> configured by the whole RelBuilder.Config, what i what is only forbidden this
> behavior when i construct the window aggregate, i still want this feature for
> normal aggregations.
> So, i propose to add a new method:
> {code:java}
> RelBuilder aggregate(
> GroupKey groupKey,
> Iterable<AggCall> aggCalls,
> boolean pruneInputOfAggregate)
> {code}.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)