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

    https://github.com/apache/spark/pull/19720#discussion_r150406296
  
    --- Diff: 
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/nullExpressions.scala
 ---
    @@ -90,7 +86,12 @@ case class Coalesce(children: Seq[Expression]) extends 
Expression {
               }
             }
           """
    -    }.mkString("\n"))
    +    }
    +
    +    ev.copy(code = s"""
    +      ${ev.isNull} = true;
    +      ${ev.value} = ${ctx.defaultValue(dataType)};
    +      ${ctx.splitExpressions(ctx.INPUT_ROW, evals)}""")
    --- End diff --
    
    `splitExpressions` puts expression codes in individual functions. Only if 
those expressions's input is from a row object, we can do this. If their input 
is from `currentVars`, the splitting doesn't work.


---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to