Github user godfreyhe commented on a diff in the pull request:
https://github.com/apache/flink/pull/4667#discussion_r139300836
--- Diff:
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/sources/FilterableTableSource.scala
---
@@ -55,4 +55,9 @@ trait FilterableTableSource[T] {
*/
def isFilterPushedDown: Boolean
+ /**
+ * @param relBuilder Builder for relational expressions.
+ */
+ def setRelBuilder(relBuilder: RelBuilder): Unit
--- End diff --
`setRelBuilder` method is called in `PushFilterIntoTableSourceScanRule`. If
we move `setRelBuilder` method to `PartitionableTableSource`,
`PushFilterIntoTableSourceScanRule` should know `FilterableTableSource` and
`PartitionableTableSource` both.
---