Skip to content

Commit fe2871c

Browse files
committed
Revert "Use local variables for resultIsNulls and argValues."
This reverts commit f8acda6.
1 parent f8acda6 commit fe2871c

File tree

1 file changed

+9
-6
lines changed
  • sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects

1 file changed

+9
-6
lines changed

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

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,16 +59,20 @@ trait InvokeLike extends Expression with NonSQLExpression {
5959
def prepareArguments(ctx: CodegenContext): (String, String, String) = {
6060

6161
val resultIsNull = if (needNullCheck) {
62-
ctx.freshName("resultIsNull")
62+
val resultIsNull = ctx.freshName("resultIsNull")
63+
ctx.addMutableState("boolean", resultIsNull, "")
64+
resultIsNull
6365
} else {
6466
"false"
6567
}
6668
val argValues = arguments.map { e =>
67-
ctx.freshName("argValue")
69+
val argValue = ctx.freshName("argValue")
70+
ctx.addMutableState(ctx.javaType(e.dataType), argValue, "")
71+
argValue
6872
}
6973

7074
val argCodes = if (needNullCheck) {
71-
val reset = s"boolean $resultIsNull = false;"
75+
val reset = s"$resultIsNull = false;"
7276
val argCodes = arguments.zipWithIndex.map { case (e, i) =>
7377
val expr = e.genCode(ctx)
7478
val updateResultIsNull = if (e.nullable) {
@@ -77,7 +81,6 @@ trait InvokeLike extends Expression with NonSQLExpression {
7781
""
7882
}
7983
s"""
80-
${ctx.javaType(e.dataType)} ${argValues(i)} = ${ctx.defaultValue(e.dataType)};
8184
if (!$resultIsNull) {
8285
${expr.code}
8386
$updateResultIsNull
@@ -91,11 +94,11 @@ trait InvokeLike extends Expression with NonSQLExpression {
9194
val expr = e.genCode(ctx)
9295
s"""
9396
${expr.code}
94-
${ctx.javaType(e.dataType)} ${argValues(i)} = ${expr.value};
97+
${argValues(i)} = ${expr.value};
9598
"""
9699
}
97100
}
98-
val argCode = argCodes.mkString("\n")
101+
val argCode = ctx.splitExpressions(ctx.INPUT_ROW, argCodes)
99102

100103
(argCode, argValues.mkString(", "), resultIsNull)
101104
}

0 commit comments

Comments
 (0)