[ https://issues.apache.org/jira/browse/FLINK-2309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14612399#comment-14612399 ]
Timo Walther commented on FLINK-2309: ------------------------------------- Yes, indeed. Another reason to actually use the analyzer. This should not be too complicated to implement. I can implement this feature, during the implementation of FLINK-2316. > Use static code analysis to replace selector functions with field accesses. > --------------------------------------------------------------------------- > > Key: FLINK-2309 > URL: https://issues.apache.org/jira/browse/FLINK-2309 > Project: Flink > Issue Type: Improvement > Components: Scala API > Affects Versions: 0.9 > Reporter: Stephan Ewen > Priority: Minor > > In the Scala API, it is nice and safe to specify the fields that are used for > joining or grouping as selector functions, like this: > {code} > val a: DataSet[MyType] = ... > val b: DataSet[(String, Int)] = ... > a join b where { _.name } equalTo { _._1 } > {code} > We could save the MapFunctions that run the key selectors if we run the > static code analysis on the key selectors and determine that they have only > some read fields that they forward, and no modifications. In this case the > SCA could adjust the program to > {code} > val a: DataSet[MyType] = ... > val b: DataSet[(String, Int)] = ... > a.join(b).where("name").equalTo(1) > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)