This is an automated email from the ASF dual-hosted git repository.
hongze pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-gluten.git
The following commit(s) were added to refs/heads/main by this push:
new d815b51334 [VL] Fix missing tag after CollapseProjectExecTransformer
rule (#9716)
d815b51334 is described below
commit d815b51334a870160f6fb21ad47a021816ff5694
Author: Boxuan Li <[email protected]>
AuthorDate: Wed May 21 12:48:51 2025 -0700
[VL] Fix missing tag after CollapseProjectExecTransformer rule (#9716)
---
.../gluten/extension/columnar/CollapseProjectExecTransformer.scala | 4 ++++
.../sql/extension/GlutenCollapseProjectExecTransformerSuite.scala | 7 +++++++
2 files changed, 11 insertions(+)
diff --git
a/gluten-substrait/src/main/scala/org/apache/gluten/extension/columnar/CollapseProjectExecTransformer.scala
b/gluten-substrait/src/main/scala/org/apache/gluten/extension/columnar/CollapseProjectExecTransformer.scala
index 39c1d650ae..0b76d9cf13 100644
---
a/gluten-substrait/src/main/scala/org/apache/gluten/extension/columnar/CollapseProjectExecTransformer.scala
+++
b/gluten-substrait/src/main/scala/org/apache/gluten/extension/columnar/CollapseProjectExecTransformer.scala
@@ -42,6 +42,10 @@ object CollapseProjectExecTransformer extends
Rule[SparkPlan] {
val validationResult = collapsedProject.doValidate()
if (validationResult.ok()) {
logDebug(s"Collapse project $p1 and $p2.")
+ // copy tags from p1 first
+ collapsedProject.copyTagsFrom(p1)
+ // if p1 has no tags, copy p2's tags
+ collapsedProject.copyTagsFrom(p2)
collapsedProject
} else {
logDebug(s"Failed to collapse project, due to
${validationResult.reason()}")
diff --git
a/gluten-ut/spark35/src/test/scala/org/apache/spark/sql/extension/GlutenCollapseProjectExecTransformerSuite.scala
b/gluten-ut/spark35/src/test/scala/org/apache/spark/sql/extension/GlutenCollapseProjectExecTransformerSuite.scala
index 87a4ce14d4..49e4187bab 100644
---
a/gluten-ut/spark35/src/test/scala/org/apache/spark/sql/extension/GlutenCollapseProjectExecTransformerSuite.scala
+++
b/gluten-ut/spark35/src/test/scala/org/apache/spark/sql/extension/GlutenCollapseProjectExecTransformerSuite.scala
@@ -21,6 +21,7 @@ import org.apache.gluten.execution.ProjectExecTransformer
import org.apache.spark.sql.GlutenSQLTestsTrait
import org.apache.spark.sql.Row
+import org.apache.spark.sql.execution.SparkPlan
class GlutenCollapseProjectExecTransformerSuite extends GlutenSQLTestsTrait {
@@ -112,6 +113,12 @@ class GlutenCollapseProjectExecTransformerSuite extends
GlutenSQLTestsTrait {
case _ => false
} == !collapsed
)
+ if (collapsed) {
+ val projectPlan = getExecutedPlan(df).collect {
+ case plan: ProjectExecTransformer => plan
+ }.head
+
assert(projectPlan.getTagValue(SparkPlan.LOGICAL_PLAN_TAG).isDefined)
+ }
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]