Github user cloud-fan commented on a diff in the pull request:

    https://github.com/apache/spark/pull/19811#discussion_r156925357
  
    --- Diff: 
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects/objects.scala
 ---
    @@ -1159,14 +1158,14 @@ case class EncodeUsingSerializer(child: Expression, 
kryo: Boolean)
         // try conf from env, otherwise create a new one
         val env = s"${classOf[SparkEnv].getName}.get()"
         val sparkConf = s"new ${classOf[SparkConf].getName}()"
    -    val serializerInit = s"""
    -      if ($env == null) {
    -        $serializer = ($serializerInstanceClass) new 
$serializerClass($sparkConf).newInstance();
    -       } else {
    -         $serializer = ($serializerInstanceClass) new 
$serializerClass($env.conf()).newInstance();
    -       }
    -     """
    -    ctx.addMutableState(serializerInstanceClass, serializer, 
serializerInit)
    +    val serializer = ctx.addMutableState(serializerInstanceClass, 
"serializerForEncode", v =>
    +      s"""
    +         |if ($env == null) {
    +         |  $v = ($serializerInstanceClass) new 
$serializerClass($sparkConf).newInstance();
    +         |} else {
    +         |  $v = ($serializerInstanceClass) new 
$serializerClass($env.conf()).newInstance();
    +         |}
    +       """, forceInline = true)
    --- End diff --
    
    why inline?


---

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

Reply via email to