aboutsummaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorYash Datta <Yash.Datta@guavus.com>2015-09-11 14:55:15 -0700
committerMichael Armbrust <michael@databricks.com>2015-09-11 14:55:15 -0700
commit1eede3b254ee3793841c92971707094ac8afee35 (patch)
treea33172a0593fa034bf09d13686e3e9a13c8b2bcd /sql
parentd5d647380f93f4773f9cb85ea6544892d409b5a1 (diff)
downloadspark-1eede3b254ee3793841c92971707094ac8afee35.tar.gz
spark-1eede3b254ee3793841c92971707094ac8afee35.tar.bz2
spark-1eede3b254ee3793841c92971707094ac8afee35.zip
[SPARK-7142] [SQL] Minor enhancement to BooleanSimplification Optimizer rule. Incorporate review comments
Adding changes suggested by cloud-fan in #5700 cc marmbrus Author: Yash Datta <Yash.Datta@guavus.com> Closes #8716 from saucam/bool_simp.
Diffstat (limited to 'sql')
-rw-r--r--sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala8
1 files changed, 4 insertions, 4 deletions
diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala
index d9b50f3c97..0f4caec745 100644
--- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala
+++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala
@@ -435,10 +435,10 @@ object BooleanSimplification extends Rule[LogicalPlan] with PredicateHelper {
// a && a => a
case (l, r) if l fastEquals r => l
// a && (not(a) || b) => a && b
- case (l, Or(l1, r)) if (Not(l) fastEquals l1) => And(l, r)
- case (l, Or(r, l1)) if (Not(l) fastEquals l1) => And(l, r)
- case (Or(l, l1), r) if (l1 fastEquals Not(r)) => And(l, r)
- case (Or(l1, l), r) if (l1 fastEquals Not(r)) => And(l, r)
+ case (l, Or(l1, r)) if (Not(l) == l1) => And(l, r)
+ case (l, Or(r, l1)) if (Not(l) == l1) => And(l, r)
+ case (Or(l, l1), r) if (l1 == Not(r)) => And(l, r)
+ case (Or(l1, l), r) if (l1 == Not(r)) => And(l, r)
// (a || b) && (a || c) => a || (b && c)
case _ =>
// 1. Split left and right to get the disjunctive predicates,