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 c4923489595b15a6c342a10b95f7721d10eb4c46..806c1394eb1515469636865d01bfe78c7f2383b6 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 @@ -210,6 +210,7 @@ object NullPropagation extends Rule[LogicalPlan] { case e @ GetField(Literal(null, _), _) => Literal(null, e.dataType) case e @ EqualNullSafe(Literal(null, _), r) => IsNull(r) case e @ EqualNullSafe(l, Literal(null, _)) => IsNull(l) + case e @ Count(expr) if !expr.nullable => Count(Literal(1)) // For Coalesce, remove null literals. case e @ Coalesce(children) =>