cloud-fan commented on code in PR #49715: URL: https://github.com/apache/spark/pull/49715#discussion_r1944016173
########## sql/core/src/test/scala/org/apache/spark/sql/execution/adaptive/AdaptiveQueryExecSuite.scala: ########## @@ -3048,6 +3047,49 @@ class AdaptiveQueryExecSuite checkAnswer(unionDF.select("id").distinct(), Seq(Row(null))) } + test("Collect twice on the same dataframe with no AQE plan changes") { + val df = spark.sql("SELECT * FROM testData join testData2 ON key = a") + df.collect() + val plan1 = df.queryExecution.executedPlan.asInstanceOf[AdaptiveSparkPlanExec].executedPlan + df.collect() + val plan2 = df.queryExecution.executedPlan.asInstanceOf[AdaptiveSparkPlanExec].executedPlan + assert(plan1.isInstanceOf[ResultQueryStageExec]) + assert(plan2.isInstanceOf[ResultQueryStageExec]) + assert(plan1 ne plan2) + assert(plan1.asInstanceOf[ResultQueryStageExec].plan + .fastEquals(plan2.asInstanceOf[ResultQueryStageExec].plan)) + } + + test("Two different collect actions on same dataframe") { + val df = spark.sql("SELECT * FROM testData join testData2 ON key = a") + val adaptivePlan = df.queryExecution.executedPlan.asInstanceOf[AdaptiveSparkPlanExec] + val res1 = adaptivePlan.execute().collect() + val plan1 = adaptivePlan.executedPlan + val res2 = adaptivePlan.executeTake(1) + val plan2 = adaptivePlan.executedPlan + assert (res1.length != res2.length) + assert(plan1.isInstanceOf[ResultQueryStageExec]) + assert(plan2.isInstanceOf[ResultQueryStageExec]) + assert(plan1 ne plan2) + assert(plan1.asInstanceOf[ResultQueryStageExec].plan + .fastEquals(plan2.asInstanceOf[ResultQueryStageExec].plan)) + } + + test("Collect twice on AQE plan change from SMJ to BHJ") { Review Comment: what does this test case try to prove? -- 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: reviews-unsubscr...@spark.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org