Github user tejasapatil commented on the issue:

    https://github.com/apache/spark/pull/15575
  
    Agree with the planner behavior described in the last few comments 
(relevant code : 
https://github.com/apache/spark/blob/master/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala#L165)
    
    I have updated the description of the PR with a table which shows the 
output partitioning and ordering for each implementation of `UnaryExecNode`. It 
will help with the review in case we are missing something / setting something 
wrong.
    
    `BroadcastExchangeExec `, `CoalesceExec `, `CollectLimitExec `, 
`ExpandExec`, `TakeOrderedAndProjectExec` and `ShuffleExchange` do not use 
child's output partitioning.
    
    I felt that there are numerous places where child's output ordering could 
be used but the operators don't set it (thus using default `Nil`). I won't made 
those modifications in this PR as I want to only do the refac in this diff.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to