Github user aljoscha commented on the pull request:
https://github.com/apache/flink/pull/1127#issuecomment-143703367
Hi,
I like the work. :smile:
Some remarks about Scala style. We are trying to make our Scala code more
consistent. Mostly, I didn't comment everything, just one particular pattern of
code that could be changed.
Now, for the technical part, you are not actually removing the predicates
that are pushed down from an expression, correct? This should be alright, since
the result will still be correct. It might just be some future optimization,
but I also think that the cost of evaluating the predicate is negligible. The
real improvement comes from early filtering in the sources, as you implemented.
Then, why do you have the `supports*` methods in `AdaptiveTableSource`.
Couldn't these methods just do nothing in case the source does not support the
feature. Or maybe return false if the pushdown was not successful. (I also
wonder why you have the differentiation between AdaptiveSources that support
pushdown and those that don't in `JavaBatchTranslator.createTable`. (I think
you do it so that stuff does not get pushed to sources that don't support it,
but this distinction might not be necessary, as mentioned above.)
---
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 [email protected] or file a JIRA ticket
with INFRA.
---