Skip to content

Commit 1c1fbfc

Browse files
Cleanups per review comments.
1 parent 7d2b7e2 commit 1c1fbfc

File tree

1 file changed

+14
-11
lines changed
  • sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions

1 file changed

+14
-11
lines changed

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/predicates.scala

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -233,17 +233,20 @@ case class CaseWhen(branches: Seq[Expression]) extends Expression {
233233
}.reduce(_ || _)
234234

235235
override lazy val resolved = {
236-
lazy val allCondBooleans = branches.sliding(2, 2).map {
237-
case Seq(cond, value) => cond.dataType == BooleanType
238-
case _ => true
239-
}.reduce(_ && _)
240-
lazy val dataTypes = branches.sliding(2, 2).map {
241-
case Seq(cond, value) => value.dataType
242-
case Seq(elseValue) => elseValue.dataType
243-
}.toSeq
244-
lazy val dataTypesEqual =
245-
if (dataTypes.size <= 1) true else dataTypes.drop(1).map(_ == dataTypes(0)).reduce(_ && _)
246-
if (!childrenResolved) false else allCondBooleans && dataTypesEqual
236+
if (!childrenResolved) {
237+
false
238+
} else {
239+
val allCondBooleans = branches.sliding(2, 2).map {
240+
case Seq(cond, value) => cond.dataType == BooleanType
241+
case _ => true
242+
}.reduce(_ && _)
243+
val dataTypes = branches.sliding(2, 2).map {
244+
case Seq(cond, value) => value.dataType
245+
case Seq(elseValue) => elseValue.dataType
246+
}.toSeq
247+
val dataTypesEqual = dataTypes.distinct.size <= 1
248+
allCondBooleans && dataTypesEqual
249+
}
247250
}
248251

249252
private lazy val branchesArr = branches.toArray

0 commit comments

Comments
 (0)