[ 
https://issues.apache.org/jira/browse/SPARK-10429?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14742251#comment-14742251
 ] 

Yin Huai commented on SPARK-10429:
----------------------------------

[Here | 
https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/codegen/GenerateMutableProjection.scala#L41-L66]
 is the code block that needs to be changed.

> MutableProjection should evaluate all expressions first and then update the 
> mutable row
> ---------------------------------------------------------------------------------------
>
>                 Key: SPARK-10429
>                 URL: https://issues.apache.org/jira/browse/SPARK-10429
>             Project: Spark
>          Issue Type: Sub-task
>          Components: SQL
>            Reporter: Yin Huai
>            Priority: Blocker
>
> Right now, SQL's mutable projection updates every value of the mutable 
> project after it evaluates the corresponding expression. This makes the 
> behavior of MutableProjection confusing and complicate the implementation of 
> common aggregate functions like stddev because developers need to be aware 
> that when evaluating {{i+1}}th expression of a mutable projection, {{i}}th 
> slot of the mutable row has already been updated.
> A better behavior of MutableProjection will be that we evaluate all 
> expressions first and then update all values of the mutable row.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to