Skip to content

Commit 29c8166

Browse files
Update the code for feedback of code review
1 parent 50444cc commit 29c8166

File tree

2 files changed

+13
-15
lines changed

2 files changed

+13
-15
lines changed

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

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -134,15 +134,13 @@ object NullPropagation extends Rule[LogicalPlan] {
134134
case Literal(null, _) => Literal(null, e.dataType)
135135
case _ => e
136136
}
137-
case e: And => e // leave it for BooleanSimplification
138-
case e: Or => e // leave it for BooleanSimplification
139-
// Put exceptional cases above
137+
// Put exceptional cases above if any
140138
case e: BinaryArithmetic => e.children match {
141139
case Literal(null, _) :: right :: Nil => Literal(null, e.dataType)
142140
case left :: Literal(null, _) :: Nil => Literal(null, e.dataType)
143141
case _ => e
144142
}
145-
case e: BinaryPredicate => e.children match {
143+
case e: BinaryComparison => e.children match {
146144
case Literal(null, _) :: right :: Nil => Literal(null, e.dataType)
147145
case left :: Literal(null, _) :: Nil => Literal(null, e.dataType)
148146
case _ => e

sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvaluationSuite.scala

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -250,17 +250,17 @@ class ExpressionEvaluationSuite extends FunSuite {
250250

251251
intercept[Exception] {evaluate(Literal(1) cast BinaryType, null)}
252252

253-
checkEvaluation(("abcdef" cast StringType).nullable, false)
254-
checkEvaluation(("abcdef" cast BinaryType).nullable,false)
255-
checkEvaluation(("abcdef" cast BooleanType).nullable, false)
256-
checkEvaluation(("abcdef" cast TimestampType).nullable, true)
257-
checkEvaluation(("abcdef" cast LongType).nullable, true)
258-
checkEvaluation(("abcdef" cast IntegerType).nullable, true)
259-
checkEvaluation(("abcdef" cast ShortType).nullable, true)
260-
checkEvaluation(("abcdef" cast ByteType).nullable, true)
261-
checkEvaluation(("abcdef" cast DecimalType).nullable, true)
262-
checkEvaluation(("abcdef" cast DoubleType).nullable, true)
263-
checkEvaluation(("abcdef" cast FloatType).nullable, true)
253+
assert(("abcdef" cast StringType).nullable === false)
254+
assert(("abcdef" cast BinaryType).nullable === false)
255+
assert(("abcdef" cast BooleanType).nullable === false)
256+
assert(("abcdef" cast TimestampType).nullable === true)
257+
assert(("abcdef" cast LongType).nullable === true)
258+
assert(("abcdef" cast IntegerType).nullable === true)
259+
assert(("abcdef" cast ShortType).nullable === true)
260+
assert(("abcdef" cast ByteType).nullable === true)
261+
assert(("abcdef" cast DecimalType).nullable === true)
262+
assert(("abcdef" cast DoubleType).nullable === true)
263+
assert(("abcdef" cast FloatType).nullable === true)
264264

265265
checkEvaluation(Cast(Literal(null, IntegerType), ShortType), null)
266266
}

0 commit comments

Comments
 (0)