[
https://issues.apache.org/jira/browse/DRILL-4201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15068717#comment-15068717
]
Jinfeng Ni commented on DRILL-4201:
-----------------------------------
Fixed in commit: 1ea3d6c3f144614caf460648c1c27c6d0f5b06b8
> DrillPushFilterPastProject should allow partial filter pushdown.
> -----------------------------------------------------------------
>
> Key: DRILL-4201
> URL: https://issues.apache.org/jira/browse/DRILL-4201
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Reporter: Jinfeng Ni
> Assignee: Jinfeng Ni
> Fix For: 1.5.0
>
>
> Currently, DrillPushFilterPastProjectRule will stop pushing the filter down,
> if the filter itself has ITEM or FLATTEN function, or its input reference is
> referring to an ITEM or FLATTEN function. However, in case that the filter is
> a conjunction of multiple sub-filters, some of them refer to ITEM or FLATTEN
> but the other not, then we should allow partial filter to be pushed down. For
> instance,
> WHERE partition_col > 10 and flatten_output_col = 'ABC'.
> The "flatten_output_col" comes from the output of FLATTEN operator, and
> therefore flatten_output_col = 'ABC' should not pushed past the project. But
> partiion_col > 10 should be pushed down, such that we could trigger the
> pruning rule to apply partition pruning.
> It would be improve Drill query performance, when the partially pushed filter
> leads to partition pruning, or the partially pushed filter results in early
> filtering in upstream operator.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)