[
https://issues.apache.org/jira/browse/FLINK-8594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16629671#comment-16629671
]
Hequn Cheng commented on FLINK-8594:
------------------------------------
Hi [~twalthr], you are right. {{SELECT DISTINCT}} should be an append stream.
The main problem is we have to output data to reset state clean-up timers of
the downstream operators when retention time has been set.
Sorry that I haven't started to solve the problem. To solve the problem, I will
try to solve [FLINK-8566|https://issues.apache.org/jira/browse/FLINK-8566]
first. What do you think?
> Make producesUpdates in DataStreamGroupAggregate return false if it is a
> distinct group by without state retention configuration
> ---------------------------------------------------------------------------------------------------------------------------------
>
> Key: FLINK-8594
> URL: https://issues.apache.org/jira/browse/FLINK-8594
> Project: Flink
> Issue Type: Improvement
> Components: Table API & SQL
> Reporter: Hequn Cheng
> Assignee: Hequn Cheng
> Priority: Major
>
> Internally, the {{DISTINCT}} is translated into a {{GROUP BY}} with all
> distinct fields being keys and no aggregation functions. However, this kind
> of \{{GROUP BY}} don't generate update at all if the state retention time has
> not been configured. We can treat the result table as an append table.
> Therefore, we can make the \{{producesUpdates}} function return false, so the
> downstream group by will not choose the correspond retract agg function,
> i.e., {{MaxWithRetractAggFunction}}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)