Github user yucai commented on a diff in the pull request: https://github.com/apache/spark/pull/21564#discussion_r195354829 --- Diff: sql/core/src/main/scala/org/apache/spark/sql/execution/columnar/InMemoryTableScanExec.scala --- @@ -170,6 +170,8 @@ case class InMemoryTableScanExec( override def outputPartitioning: Partitioning = { relation.cachedPlan.outputPartitioning match { case h: HashPartitioning => updateAttribute(h).asInstanceOf[HashPartitioning] + case r: RangePartitioning => + r.copy(ordering = r.ordering.map(updateAttribute(_).asInstanceOf[SortOrder])) --- End diff -- Good suggestion, thanks @mgaido91. @viirya Do we need consider below: `PartitioningCollection` in `InMemoryTableScanExec.outputPartitioning`, which is also `Expression`? `PartitioningCollection` and `BroadcastPartitioning` in `ReusedExchangeExec.outputPartitioning`?
--- --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org