[
https://issues.apache.org/jira/browse/DRILL-7458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17020343#comment-17020343
]
ASF GitHub Bot commented on DRILL-7458:
---------------------------------------
vvysotskyi commented on pull request #1914: DRILL-7458: Base framework for
storage plugins
URL: https://github.com/apache/drill/pull/1914#discussion_r369095160
##########
File path:
exec/java-exec/src/main/java/org/apache/drill/exec/planner/PlannerPhase.java
##########
@@ -238,22 +251,41 @@ public RuleSet getRules(OptimizerRulesContext context,
Collection<StoragePlugin>
this.description = description;
}
+ /**
+ * Filter push-down is best done during logical planning so that the result
can
+ * influence parallelization in the physical phase. The specific phase
differs
+ * depending on which planning mode is enabled. This check hides those
details
+ * from storage plugins that simply want to know "should I add my filter
+ * push-down rules in the given phase?"
+ *
+ * @return true if filter push-down rules should be applied in this phase
+ */
+ public boolean isFilterPushDownPhase() {
Review comment:
I disagree with limiting the possibility of pushdown to several phases. In
some cases, there may be additional rel nodes between filter and scan, so
pushdown cannot happen, but in other planning stages, these rel nodes may be
switched with filter, or filter may be extracted from join condition, etc. so
pushdown may happen only at a specific phase, but not at the phase we want.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> Base storage plugin framework
> -----------------------------
>
> Key: DRILL-7458
> URL: https://issues.apache.org/jira/browse/DRILL-7458
> Project: Apache Drill
> Issue Type: Improvement
> Reporter: Paul Rogers
> Assignee: Paul Rogers
> Priority: Major
> Labels: doc-impacting
> Fix For: 1.18.0
>
>
> The "Easy" framework allows third-parties to add format plugins to Drill with
> moderate effort. (The process could be easier, but "Easy" makes it as simple
> as possible given the current structure.)
> At present, no such "starter" framework exists for storage plugins. Further,
> multiple storage plugins have implemented filter push down, seemingly by
> copying large blocks of code.
> This ticket offers a "base" framework for storage plugins and for filter
> push-downs. The framework builds on the EVF, allowing plugins to also support
> project push down.
> The framework has a "test mule" storage plugin to verify functionality, and
> was used as the basis of an REST-like plugin.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)