GitHub user beyond1920 opened a pull request: https://github.com/apache/flink/pull/2923
[FLINK-5220] [Table API & SQL] Flink SQL projection pushdown This pr aims to do projection pushdown optimization. There are two commits here, first one is linked to [https://issues.apache.org/jira/browse/FLINK-5185](url), it is the pre work; second commit is merely about projection pushdown work. So it's maybe better to start with the second commit. The main changes including: 1. add PushProjectIntoBatchTableSourceScanRule to match DataSetCalc->BatchTableSourceScan 2. add ProjectableTableSource to represent a TableSource which supports Projection pushdown 3. change BatchScan cost compute logic 4. add a test case You can merge this pull request into a Git repository by running: $ git pull https://github.com/alibaba/flink jira-5220 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/2923.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2923 ---- commit 6f4ecf2efaf424505e05c2d9142c90da24e12ed1 Author: beyond1920 <beyond1...@126.com> Date: 2016-11-29T04:26:02Z Decouple BatchTableSourceScan with TableSourceTable modify constructor of BatchScan, BatchTableSourceScan, DataSetScan Test Plan: junit Reviewers: kete.yangkt Differential Revision: http://phabricator.taobao.net/D6601 modify code style and extract common method let rule decide which tableSource to create a BatchTableScan Decouple BatchTableSourceScan with TableSourceTable make long length shorter to pass the flink code style check commit 181f7f7d4362799549f9ad3e7da2e69838c0f834 Author: beyond1920 <beyond1...@126.com> Date: 2016-12-02T03:33:12Z push project down into BatchTableSourceScan ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---