This is an automated email from the ASF dual-hosted git repository.
marin-ma pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gluten.git
The following commit(s) were added to refs/heads/main by this push:
new a1caefecb4 [MINOR][VL] Fix explain with ColumnarPartialGenerateExec
(#12478)
a1caefecb4 is described below
commit a1caefecb4c5b855c47cee4903c05e97eaa4b67f
Author: Rong Ma <[email protected]>
AuthorDate: Thu Jul 9 09:37:48 2026 +0100
[MINOR][VL] Fix explain with ColumnarPartialGenerateExec (#12478)
---
.../gluten/execution/ColumnarPartialGenerateExec.scala | 4 +++-
.../apache/spark/sql/execution/GlutenHiveUDFSuite.scala | 17 +++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git
a/backends-velox/src/main/scala/org/apache/gluten/execution/ColumnarPartialGenerateExec.scala
b/backends-velox/src/main/scala/org/apache/gluten/execution/ColumnarPartialGenerateExec.scala
index ad605dcf6c..6729e35c6b 100644
---
a/backends-velox/src/main/scala/org/apache/gluten/execution/ColumnarPartialGenerateExec.scala
+++
b/backends-velox/src/main/scala/org/apache/gluten/execution/ColumnarPartialGenerateExec.scala
@@ -376,7 +376,9 @@ case class ColumnarPartialGenerateExec(generateExec:
GenerateExec, child: SparkP
|$formattedNodeName
|${ExplainUtils.generateFieldString("Output", output)}
|${ExplainUtils.generateFieldString("Input", child.output)}
- |${ExplainUtils.generateFieldString("GenerateExec", generateExec)}
+ |${ExplainUtils.generateFieldString(
+ "GenerateExec",
+ generateExec.verboseStringWithOperatorId())}
|""".stripMargin
}
diff --git
a/backends-velox/src/test/scala/org/apache/spark/sql/execution/GlutenHiveUDFSuite.scala
b/backends-velox/src/test/scala/org/apache/spark/sql/execution/GlutenHiveUDFSuite.scala
index 914300069f..c2ee2f0dbe 100644
---
a/backends-velox/src/test/scala/org/apache/spark/sql/execution/GlutenHiveUDFSuite.scala
+++
b/backends-velox/src/test/scala/org/apache/spark/sql/execution/GlutenHiveUDFSuite.scala
@@ -207,6 +207,23 @@ class GlutenHiveUDFSuite extends GlutenQueryComparisonTest
with SQLTestUtils {
}
}
+ test("partial generate verbose string includes generate exec verbose
output") {
+ withTempFunction("testUDTF") {
+ sql(s"CREATE TEMPORARY FUNCTION testUDTF AS
'${classOf[CustomerUDTF].getName}';")
+ val df = sql(
+ "select l_partkey, col0, col1 from lineitem lateral view" +
+ " testUDTF(l_partkey, l_comment) as col0, col1")
+ val partialGenerate = getExecutedPlan(df)
+ .collectFirst { case exec: ColumnarPartialGenerateExec => exec }
+ .getOrElse(fail("Expected ColumnarPartialGenerateExec in executed
plan"))
+
+ val partialGenerateVerbose =
partialGenerate.verboseStringWithOperatorId()
+ assert(partialGenerateVerbose.contains("GenerateExec"))
+ assert(
+
partialGenerateVerbose.contains(partialGenerate.generateExec.verboseStringWithOperatorId()))
+ }
+ }
+
test("child of GenerateExec is not offloadable") {
withTempFunction("testUDTF") {
val plusOne = udf((x: Long) => x + 1)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]