iward created SPARK-12125: ----------------------------- Summary: pull out nondeterministic expressions from Join Key: SPARK-12125 URL: https://issues.apache.org/jira/browse/SPARK-12125 Project: Spark Issue Type: Bug Affects Versions: 1.5.2, 1.5.1, 1.5.0 Reporter: iward
Currently,*nondeterministic expressions* are only allowed in *Project* or *Filter*,And only when we use nondeterministic expressions in *UnaryNode* can be pulled out. But,Sometime in many case,we will use nondeterministic expressions to process *join keys* avoiding data skew.for example: {noformat} select * from tableA a join (select * from tableB) b on upper((case when (a.brand_code is null or a.brand_code = '' ) then cast( (-rand() * 10000000 ) as string ) else a.brand_code end )) = b.brand_code {noformat} This PR introduce a mechanism to pull out nondeterministic expressions from *Join*,so we can use nondeterministic expression in *Join* appropriately. -- 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