cloud-fan commented on a change in pull request #34779:
URL: https://github.com/apache/spark/pull/34779#discussion_r763135859
##########
File path:
sql/core/src/main/scala/org/apache/spark/sql/SparkSessionExtensions.scala
##########
@@ -226,6 +226,21 @@ class SparkSessionExtensions {
preCBORules += builder
}
+ private[this] val earlyScanPushDownRules = mutable.Buffer.empty[RuleBuilder]
+
+ private[sql] def buildEarlyScanPushDownRules(session: SparkSession):
Seq[Rule[LogicalPlan]] = {
+ earlyScanPushDownRules.map(_.apply(session)).toSeq
+ }
+
+ /**
+ * Inject an optimizer `Rule` builder that rewrites logical plans into the
[[SparkSession]].
+ * The injected rules will be executed once after the operator optimization
batch and
+ * after any push down optimization rules.
+ */
+ def injectEarlyScanPushDownRule(builder: RuleBuilder): Unit = {
Review comment:
Let's update the classdoc, which only mentions
```
* This current provides the following extension points:
*
* <ul>
* <li>Analyzer Rules.</li>
* <li>Check Analysis Rules.</li>
* <li>Optimizer Rules.</li>
* <li>Pre CBO Rules.</li>
* <li>Planning Strategies.</li>
* <li>Customized Parser.</li>
* <li>(External) Catalog listeners.</li>
* <li>Columnar Rules.</li>
* <li>Adaptive Query Stage Preparation Rules.</li>
* </ul>
```
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]