File tree Expand file tree Collapse file tree 1 file changed +3
-7
lines changed
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions Expand file tree Collapse file tree 1 file changed +3
-7
lines changed Original file line number Diff line number Diff line change @@ -199,8 +199,7 @@ case class Stack(children: Seq[Expression]) extends Generator {
199
199
200
200
override protected def doGenCode (ctx : CodegenContext , ev : ExprCode ): ExprCode = {
201
201
// Rows - we write these into an array.
202
- val rowData = ctx.addMutableState(" InternalRow[]" , " rows" ,
203
- v => s " $v = new InternalRow[ $numRows]; " )
202
+ val rowData = ctx.freshName(" rowsStack" )
204
203
val values = children.tail
205
204
val dataTypes = values.take(numFields).map(_.dataType)
206
205
val code = ctx.splitExpressionsWithCurrentInputs(Seq .tabulate(numRows) { row =>
@@ -214,14 +213,11 @@ case class Stack(children: Seq[Expression]) extends Generator {
214
213
215
214
// Create the collection.
216
215
val wrapperClass = classOf [mutable.WrappedArray [_]].getName
217
- val wrappedArray = ctx.addMutableState(
218
- s " $wrapperClass<InternalRow> " ,
219
- " stackWrappedArray" ,
220
- v => s " $v = $wrapperClass$$ .MODULE $$ .make( $rowData); " )
221
216
ev.copy(code =
222
217
s """
218
+ |InternalRow[] $rowData = new InternalRow[ $numRows];
223
219
| $code
224
- | $wrapperClass<InternalRow> ${ev.value} = $wrappedArray ;
220
+ | $wrapperClass<InternalRow> ${ev.value} = $wrapperClass $$ .MODULE $$ .make( $rowData ) ;
225
221
""" .stripMargin, isNull = " false" )
226
222
}
227
223
}
You can’t perform that action at this time.
0 commit comments