Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
1.0.3
-
None
-
None
Description
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.
.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; } });
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().
Attachments
Issue Links
- is related to
-
FLINK-4078 Use ClosureCleaner for CoGroup where
- Closed
- links to