martin-g commented on code in PR #2644:
URL: https://github.com/apache/datafusion-comet/pull/2644#discussion_r2469056681
##########
spark/src/test/scala/org/apache/comet/exec/CometExecSuite.scala:
##########
@@ -119,10 +119,8 @@ class CometExecSuite extends CometTestBase {
val infos = new ExtendedExplainInfo().generateExtendedInfo(cometPlan)
assert(infos.contains("Dynamic Partition Pruning is not supported"))
- withSQLConf(CometConf.COMET_EXPLAIN_VERBOSE_ENABLED.key -> "true") {
- val extendedExplain = new
ExtendedExplainInfo().generateExtendedInfo(cometPlan)
- assert(extendedExplain.contains("Comet accelerated"))
- }
+ val extendedExplain = new
ExtendedExplainInfo().generateExtendedInfo(cometPlan)
+ assert(extendedExplain.contains("Comet accelerated"))
Review Comment:
```suggestion
assert(infos.contains("Comet accelerated"))
```
##########
spark/src/test/scala/org/apache/spark/sql/CometTestBase.scala:
##########
@@ -168,9 +168,23 @@ abstract class CometTestBase
/** Check for the correct results as well as the expected fallback reason */
def checkSparkAnswerAndFallbackReason(sql: String, fallbackReason: String):
Unit = {
- val (_, cometPlan) = checkSparkAnswer(sql)
- val explain = new
ExtendedExplainInfo().generateVerboseExtendedInfo(cometPlan)
- assert(explain.contains(fallbackReason))
+ checkSparkAnswerAndFallbackReason(spark.sql(sql), fallbackReason)
+ }
+
+ /** Check for the correct results as well as the expected fallback reason */
+ def checkSparkAnswerAndFallbackReason(df: => DataFrame, fallbackReason:
String): Unit = {
+ val (_, cometPlan) = checkSparkAnswer(df)
+ val fallbacks = new ExtendedExplainInfo().getFallbackReasons(cometPlan)
+ assert(fallbacks.contains(fallbackReason))
Review Comment:
If this ever fails it would be hard to find the reason.
```suggestion
assert(fallbacks.contains(fallbackReason), s"Expected fallback reason
not found.\nExpected: [$fallbackReason]\nObserved: ${fallbacks.mkString("[", "
| ", "]")}")
```
##########
spark/src/test/scala/org/apache/spark/sql/CometTestBase.scala:
##########
@@ -168,9 +168,23 @@ abstract class CometTestBase
/** Check for the correct results as well as the expected fallback reason */
def checkSparkAnswerAndFallbackReason(sql: String, fallbackReason: String):
Unit = {
- val (_, cometPlan) = checkSparkAnswer(sql)
- val explain = new
ExtendedExplainInfo().generateVerboseExtendedInfo(cometPlan)
- assert(explain.contains(fallbackReason))
+ checkSparkAnswerAndFallbackReason(spark.sql(sql), fallbackReason)
+ }
+
+ /** Check for the correct results as well as the expected fallback reason */
+ def checkSparkAnswerAndFallbackReason(df: => DataFrame, fallbackReason:
String): Unit = {
+ val (_, cometPlan) = checkSparkAnswer(df)
+ val fallbacks = new ExtendedExplainInfo().getFallbackReasons(cometPlan)
+ assert(fallbacks.contains(fallbackReason))
+ }
+
+ /** Check for the correct results as well as the expected fallback reasons */
+ def checkSparkAnswerAndFallbackReasons(df: => DataFrame, fallbackReasons:
Set[String]): Unit = {
+ val (_, cometPlan) = checkSparkAnswer(df)
+ val fallbacks = new ExtendedExplainInfo().getFallbackReasons(cometPlan)
+ for (reason <- fallbackReasons) {
+ assert(fallbacks.contains(reason))
Review Comment:
```suggestion
assert(fallbacks.contains(reason), s"Expected fallback reason not
found.\nExpected: [$reason]\nObserved: ${fallbacks.mkString("[", " | ", "]")}")
```
##########
spark/src/test/scala/org/apache/comet/exec/CometExecSuite.scala:
##########
@@ -119,10 +119,8 @@ class CometExecSuite extends CometTestBase {
val infos = new ExtendedExplainInfo().generateExtendedInfo(cometPlan)
assert(infos.contains("Dynamic Partition Pruning is not supported"))
- withSQLConf(CometConf.COMET_EXPLAIN_VERBOSE_ENABLED.key -> "true") {
- val extendedExplain = new
ExtendedExplainInfo().generateExtendedInfo(cometPlan)
- assert(extendedExplain.contains("Comet accelerated"))
- }
+ val extendedExplain = new
ExtendedExplainInfo().generateExtendedInfo(cometPlan)
Review Comment:
```suggestion
```
--
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]