File tree Expand file tree Collapse file tree 1 file changed +2
-2
lines changed
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change @@ -122,7 +122,7 @@ case class ConcatWs(children: Seq[Expression])
122122 val (varargCount, varargBuild) = children.tail.zip(evals.tail).map { case (child, eval) =>
123123 child.dataType match {
124124 case StringType =>
125- (s " $varargNum ++; " ,
125+ (" " , // we count all the StringType arguments num at once below.
126126 s " $array[ $idxInVararg ++] = ${eval.isNull} ? (UTF8String) null : ${eval.primitive}; " )
127127 case _ : ArrayType =>
128128 val size = ctx.freshName(" n" )
@@ -144,7 +144,7 @@ case class ConcatWs(children: Seq[Expression])
144144
145145 evals.map(_.code).mkString(" \n " ) +
146146 s """
147- int $varargNum = 0 ;
147+ int $varargNum = ${children.count(_.dataType == StringType ) - 1 } ;
148148 int $idxInVararg = 0;
149149 ${varargCount.mkString(" \n " )}
150150 UTF8String[] $array = new UTF8String[ $varargNum];
You can’t perform that action at this time.
0 commit comments