Github user cloud-fan commented on a diff in the pull request: https://github.com/apache/spark/pull/21754#discussion_r205929402 --- Diff: sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/Exchange.scala --- @@ -52,6 +52,14 @@ case class ReusedExchangeExec(override val output: Seq[Attribute], child: Exchan // Ignore this wrapper for canonicalizing. override def doCanonicalize(): SparkPlan = child.canonicalized + override protected def doPrepare(): Unit = { + child match { + case shuffleExchange @ ShuffleExchangeExec(_, _, Some(coordinator)) => + coordinator.registerExchange(shuffleExchange) --- End diff -- why is it needed? we forget to register the shuffle exchange in some csaes?
--- --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org