Github user gatorsmile commented on a diff in the pull request:

    https://github.com/apache/spark/pull/19977#discussion_r157904983
  
    --- Diff: 
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/stringExpressions.scala
 ---
    @@ -73,17 +82,25 @@ case class Concat(children: Seq[Expression]) extends 
Expression with ImplicitCas
             }
           """
         }
    +
    +    val (javaClass, initCode) = if (isBinaryMode) {
    +      (classOf[ByteArray].getName, s"byte[][] $args = new 
byte[${evals.length}][];")
    +    } else {
    +      ("UTF8String", s"UTF8String[] $args = new 
UTF8String[${evals.length}];")
    +    }
         val codes = ctx.splitExpressionsWithCurrentInputs(
           expressions = inputs,
           funcName = "valueConcat",
    -      extraArguments = ("UTF8String[]", args) :: Nil)
    +      extraArguments = (s"${ctx.javaType(dataType)}[]", args) :: Nil)
         ev.copy(s"""
    -      UTF8String[] $args = new UTF8String[${evals.length}];
    +      $initCode
           $codes
    -      UTF8String ${ev.value} = UTF8String.concat($args);
    +      ${ctx.javaType(dataType)} ${ev.value} = $javaClass.concat($args);
           boolean ${ev.isNull} = ${ev.value} == null;
         """)
       }
    +
    +  override def toString: String = s"concat(${children.mkString(", ")})"
    --- End diff --
    
    Also need to override `sql`


---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to