SuccessChanges

Summary

  1. [SPARK-25714] Fix Null Handling in the Optimizer rule (commit: 182bc85f2db0b3268b9b93ff91210811b00e1636) (details)
  2. Revert "[SPARK-25714] Fix Null Handling in the Optimizer rule (commit: b3d1b1bcbaaefba5d78a52794a3efaf4e7dc6d6c) (details)
Commit 182bc85f2db0b3268b9b93ff91210811b00e1636 by gatorsmile
[SPARK-25714] Fix Null Handling in the Optimizer rule
BooleanSimplification
## What changes were proposed in this pull request?
```Scala
   val df1 = Seq(("abc", 1), (null, 3)).toDF("col1", "col2")
   df1.write.mode(SaveMode.Overwrite).parquet("/tmp/test1")
   val df2 = spark.read.parquet("/tmp/test1")
   df2.filter("col1 = 'abc' OR (col1 != 'abc' AND col2 == 3)").show()
```
Before the PR, it returns both rows. After the fix, it returns `Row
("abc", 1))`. This is to fix the bug in NULL handling in
BooleanSimplification. This is a bug introduced in Spark 1.6 release.
## How was this patch tested? Added test cases
Closes #22702 from gatorsmile/fixBooleanSimplify2.
Authored-by: gatorsmile <gatorsmile@gmail.com> Signed-off-by: gatorsmile
<gatorsmile@gmail.com>
(cherry picked from commit c9ba59d38e2be17b802156b49d374a726e66c6b9)
Signed-off-by: gatorsmile <gatorsmile@gmail.com>
(commit: 182bc85f2db0b3268b9b93ff91210811b00e1636)
The file was modifiedsql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/expressions.scala (diff)
The file was modifiedsql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/predicates.scala (diff)
The file was modifiedsql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/optimizer/BooleanSimplificationSuite.scala (diff)
The file was modifiedsql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala (diff)
Commit b3d1b1bcbaaefba5d78a52794a3efaf4e7dc6d6c by gatorsmile
Revert "[SPARK-25714] Fix Null Handling in the Optimizer rule
BooleanSimplification"
This reverts commit 182bc85f2db0b3268b9b93ff91210811b00e1636.
(commit: b3d1b1bcbaaefba5d78a52794a3efaf4e7dc6d6c)
The file was modifiedsql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/expressions.scala (diff)
The file was modifiedsql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala (diff)
The file was modifiedsql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/optimizer/BooleanSimplificationSuite.scala (diff)
The file was modifiedsql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/predicates.scala (diff)