You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Aljoscha Krettek (JIRA)" <ji...@apache.org> on 2017/02/25 15:25:45 UTC
[jira] [Commented] (FLINK-5914) remove aggregateResultType from
streaming.api.datastream.aggregate
[ https://issues.apache.org/jira/browse/FLINK-5914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15884272#comment-15884272 ]
Aljoscha Krettek commented on FLINK-5914:
-----------------------------------------
The reason for the {{WindowFunction}} input type (which is also the {{AggregateFunction}} result type) being different from the {{WindowFunction}} result type is to allow the user to enrich the result from the {{AggregateFunction}} with meta information about the window firing that is only available to the {{WindowFunction}} or {{ProcessWindowFunction}}. Right now, the only meta information available is the {{Window}} for which this firing is happening but in the future this will be extended with, for example, a lateness specification, the number of window firings, etc.
What's the reason for wanting to remove the result/intermediate type? I think it would only restrict what a user can do and this restriction was considered a bug for {{fold()}}: FLINK-3869.
> remove aggregateResultType from streaming.api.datastream.aggregate
> ------------------------------------------------------------------
>
> Key: FLINK-5914
> URL: https://issues.apache.org/jira/browse/FLINK-5914
> Project: Flink
> Issue Type: Improvement
> Components: DataStream API
> Reporter: Shaoxuan Wang
> Assignee: Shaoxuan Wang
>
> aggregateResultType does not seem necessary for streaming.api.datastream.aggregate. We will anyway not serialize the aggregateResult between aggregate and window function. Aggregate function itself provides a function to getResult(), window function here should just emit the same results as aggregate output. So aggregateResultType should be same as resultType. I think we can safely remove aggregateResultType, thereby user will not have to provide two same types for the streaming.api.datastream.aggregate.
> [~StephanEwen], what do you think?
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)