Jackey Lee created SPARK-30036:
----------------------------------

             Summary: REPARTITION hint dose not work with order by
                 Key: SPARK-30036
                 URL: https://issues.apache.org/jira/browse/SPARK-30036
             Project: Spark
          Issue Type: Bug
          Components: SQL
    Affects Versions: 3.0.0
            Reporter: Jackey Lee


Example SQL: select /*+ REPARTITION(2) */ * from test order by a

== Physical Plan ==
*(1) Sort [a#0 ASC NULLS FIRST], true, 0
+- Exchange rangepartitioning(a#0 ASC NULLS FIRST, 2), true, [id=#11]
     +- Exchange RoundRobinPartitioning(3)
          +- Scan hive default.test [a#0, b#1], HiveTableRelation 
`default`.`test`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [a#0, 
b#1|#0, b#1]

EnsureRequirements adds ShuffleExchangeExec (RangePartitioning) after Sort if 
RoundRobinPartitioning behinds it. This will cause 2 shuffles, and the number 
of partitions in the final stage is not the number specified by 
RoundRobinPartitioning.

This patch will add a new rule to change RoundRobinPartitioning to 
RangePartitioning rather than add new ShuffleExchangeExec.

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to