Skip to content

Commit 1e07fff

Browse files
committed
[SPARK-22520][SQL][FOLLOWUP] remove outer if for case when codegen
## What changes were proposed in this pull request? a minor cleanup for #19752 . Remove the outer if as the code is inside `do while` ## How was this patch tested? existing tests Author: Wenchen Fan <[email protected]> Closes #19830 from cloud-fan/minor.
1 parent 64817c4 commit 1e07fff

File tree

1 file changed

+13
-17
lines changed

1 file changed

+13
-17
lines changed

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

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -197,28 +197,24 @@ case class CaseWhen(
197197
val cond = condExpr.genCode(ctx)
198198
val res = valueExpr.genCode(ctx)
199199
s"""
200-
if(!$conditionMet) {
201-
${cond.code}
202-
if (!${cond.isNull} && ${cond.value}) {
203-
${res.code}
204-
${ev.isNull} = ${res.isNull};
205-
${ev.value} = ${res.value};
206-
$conditionMet = true;
207-
continue;
208-
}
209-
}
210-
"""
200+
|${cond.code}
201+
|if (!${cond.isNull} && ${cond.value}) {
202+
| ${res.code}
203+
| ${ev.isNull} = ${res.isNull};
204+
| ${ev.value} = ${res.value};
205+
| $conditionMet = true;
206+
| continue;
207+
|}
208+
""".stripMargin
211209
}
212210

213211
val elseCode = elseValue.map { elseExpr =>
214212
val res = elseExpr.genCode(ctx)
215213
s"""
216-
if(!$conditionMet) {
217-
${res.code}
218-
${ev.isNull} = ${res.isNull};
219-
${ev.value} = ${res.value};
220-
}
221-
"""
214+
|${res.code}
215+
|${ev.isNull} = ${res.isNull};
216+
|${ev.value} = ${res.value};
217+
""".stripMargin
222218
}
223219

224220
val allConditions = cases ++ elseCode

0 commit comments

Comments
 (0)