You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Aniket Arun Kulkarni (JIRA)" <ji...@apache.org> on 2018/04/05 19:01:00 UTC

[jira] [Created] (SPARK-23876) OR condition in joins causes results to come back to driver

Aniket Arun Kulkarni created SPARK-23876:
--------------------------------------------

             Summary: OR condition in joins causes results to come back to driver
                 Key: SPARK-23876
                 URL: https://issues.apache.org/jira/browse/SPARK-23876
             Project: Spark
          Issue Type: Bug
          Components: Spark Core
    Affects Versions: 1.6.2
            Reporter: Aniket Arun Kulkarni


Hello all,

I am trying to implement an 'OR' join, something as shown below,

leftDF.join(rightDF, leftDF(leftJoinKey1) === rightDF(rightJoinKey1) || leftDF(leftJoinKey2) === rightDF(rightJoinKey2), joinType)
.select(leftDF.col("*"), rightDF(colToFetchFromRight) as(aliasForRightColumn))

rightDF has around 400 million rows
leftDF has around 200 million rows



When I run this code, I get an error saying

"Total size of serialized results is bigger than spark.driver.maxResultSize"

This means the results are being sent back to the driver even when i did not call actions such as count or show.

If I remove the or condition, the results are no longer sent to the driver and the job goes through.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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