You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Ufuk Celebi (JIRA)" <ji...@apache.org> on 2016/06/20 13:38:05 UTC
[jira] [Closed] (FLINK-4083) Use ClosureCleaner for Join where and
equalTo
[ https://issues.apache.org/jira/browse/FLINK-4083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ufuk Celebi closed FLINK-4083.
------------------------------
Resolution: Fixed
Fix Version/s: 1.1.0
Fixed in 6a1144e (master).
> Use ClosureCleaner for Join where and equalTo
> ---------------------------------------------
>
> Key: FLINK-4083
> URL: https://issues.apache.org/jira/browse/FLINK-4083
> Project: Flink
> Issue Type: Bug
> Affects Versions: 1.0.3
> Reporter: Stefan Richter
> Assignee: Stefan Richter
> Priority: Minor
> Fix For: 1.1.0
>
>
> When specifying a key selector in the where or equalTo clause of a Join, the closure cleaner is not used. Same problem as FLINK-4078.
> {code}
> .join(ds)
> .where(new KeySelector<CustomType, Integer>() {
> @Override
> public Integer getKey(CustomType value) {
> return value.myInt;
> }
> })
> .equalTo(new KeySelector<CustomType, Integer>(){
> @Override
> public Integer getKey(CustomType value) throws Exception {
> return value.myInt;
> }
> });
> {code}
> The problem is that the KeySelector is an anonymous inner class and as such as a reference to the outer object. Normally, this would be rectified by the closure cleaner but the cleaner is not used in Join.where() and Join.equalTo().
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)