Skip to content

Commit 72f73fb

Browse files
committed
combine the limits.
1 parent 3779874 commit 72f73fb

File tree

1 file changed

+7
-3
lines changed
  • sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer

1 file changed

+7
-3
lines changed

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -868,11 +868,15 @@ object PushLimitThroughOuterJoin extends Rule[LogicalPlan] with PredicateHelper
868868
case f @ Limit(expr, Join(left, right, joinType, joinCondition)) =>
869869
joinType match {
870870
case RightOuter =>
871-
Limit(expr, Join(left, Limit(expr, right), joinType, joinCondition))
871+
Limit(expr, Join(left, CombineLimits(Limit(expr, right)), joinType, joinCondition))
872872
case LeftOuter =>
873-
Limit(expr, Join(Limit(expr, left), right, joinType, joinCondition))
873+
Limit(expr, Join(CombineLimits(Limit(expr, left)), right, joinType, joinCondition))
874874
case FullOuter =>
875-
Limit(expr, Join(Limit(expr, left), Limit(expr, right), joinType, joinCondition))
875+
Limit(expr,
876+
Join(
877+
CombineLimits(Limit(expr, left)),
878+
CombineLimits(Limit(expr, right)),
879+
joinType, joinCondition))
876880
case _ => f // DO Nothing for the other join types
877881
}
878882
}

0 commit comments

Comments
 (0)