[
https://issues.apache.org/jira/browse/FLINK-1045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14094732#comment-14094732
]
Stephan Ewen commented on FLINK-1045:
-------------------------------------
The RichReduceFunction implements the combine interface by default. The
annotation is still used there to check whether the combine function should be
used.
> Remove Combinable Annotation
> ----------------------------
>
> Key: FLINK-1045
> URL: https://issues.apache.org/jira/browse/FLINK-1045
> Project: Flink
> Issue Type: Improvement
> Components: Java API, Scala API
> Reporter: Fabian Hueske
> Priority: Blocker
> Labels: api-change
>
> Since the {{combine()}} method was extracted into an interface, we can check
> if a function is combinable by checking if the interface is implemented.
> Hence, the {{Combinable}} annotation could be removed, IMHO.
> However, this would change the API because {{RichGroupReduceFunction}} could
> no longer have a default implementation of {{combine()}} that can be enabled
> by attaching the annotation.
> Right now, the {{Combinable}} annotation is just not necessary as the
> implementation of the interface tells the system everything it needs to know.
> Removing the {{Combinable}} annotation would also make the handling of
> different combinable functions easier. For example a function that implements
> the interfaces {{GroupReduceFunction}} and {{FlatCombineFunction}} does not
> need to attach the annotation.
> Since this is not a big, but API changing change, I would like to get it into
> 0.6 (if we decide to do it).
> What do you guys think?
--
This message was sent by Atlassian JIRA
(v6.2#6252)