This is an automated email from the ASF dual-hosted git repository.
viirya pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-datafusion-comet.git
The following commit(s) were added to refs/heads/main by this push:
new 50470bd fix: Comet sink operator should not have children operators
(#26)
50470bd is described below
commit 50470bd603a589ee0b4c8a7e68a1a6094912e298
Author: Liang-Chi Hsieh <[email protected]>
AuthorDate: Wed Feb 14 20:28:28 2024 -0800
fix: Comet sink operator should not have children operators (#26)
---
.../src/main/scala/org/apache/comet/CometSparkSessionExtensions.scala | 1 +
spark/src/main/scala/org/apache/comet/serde/QueryPlanSerde.scala | 4 ++++
2 files changed, 5 insertions(+)
diff --git
a/spark/src/main/scala/org/apache/comet/CometSparkSessionExtensions.scala
b/spark/src/main/scala/org/apache/comet/CometSparkSessionExtensions.scala
index 1c0f7bb..cd0b830 100644
--- a/spark/src/main/scala/org/apache/comet/CometSparkSessionExtensions.scala
+++ b/spark/src/main/scala/org/apache/comet/CometSparkSessionExtensions.scala
@@ -295,6 +295,7 @@ class CometSparkSessionExtensions
case Some(nativeOp) =>
val cometOp = CometUnionExec(u, u.children)
CometSinkPlaceHolder(nativeOp, u, cometOp)
+ case None => u
}
case op =>
diff --git a/spark/src/main/scala/org/apache/comet/serde/QueryPlanSerde.scala
b/spark/src/main/scala/org/apache/comet/serde/QueryPlanSerde.scala
index 609026e..e52018b 100644
--- a/spark/src/main/scala/org/apache/comet/serde/QueryPlanSerde.scala
+++ b/spark/src/main/scala/org/apache/comet/serde/QueryPlanSerde.scala
@@ -1698,6 +1698,10 @@ object QueryPlanSerde extends Logging with
ShimQueryPlanSerde {
if (scanTypes.length == op.output.length) {
scanBuilder.addAllFields(scanTypes.asJava)
+
+ // Sink operators don't have children
+ result.clearChildren()
+
Some(result.setScan(scanBuilder).build())
} else {
// There are unsupported scan type