...
The user specifies option for sources through a new connector option:
Option | Type | Default value |
---|---|---|
source.filter-push-down.enabled | Boolean | true |
For other source abilities, we can also consider adding similar configuration options in the future to give users the choice. This is not urgent and can be continuously introduced.
Option | Type | Default value |
---|---|---|
source.aggregate-push-down.enabled | Boolean | true |
... | Boolean | true |
Add a new source ability options in the TableSourceOptions class.
Code Block | ||
---|---|---|
| ||
@PublicEvolving public class TableSourceOptions { public static final ConfigOption<String> ENABLE_FILTER_PUSH_DOWN = key("source.filter-push-down.enabled") .booleanType() .defaultValue(true) .withDescription("Whether to enable filter push down."); ...... } |
Reject Reason
We don't have a common implementation for SupportsFilterPushdown itself. Why does a potential behavior of the SupportsFilterPushdown.applyFilters() method deserve a common configuration? A common implementation should always come first, then its configuration becomes a common configuration as a natural result. . There are multiple approaches to address the issue. Pushing back the filters is just one way of achieving this.