Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
2.0.1
-
None
-
None
Description
val df2 = spark.range(1e9.toInt).withColumn("one", lit(1)) val df3 = spark.range(1e9.toInt) df3.join(df2, df3("id") === df2("one")).count()
throws
org.apache.spark.sql.AnalysisException: Cartesian joins could be prohibitively expensive and are disabled by default. To explicitly enable them, please set spark.sql.crossJoin.enabled = true;
This is probably not the right behavior because it was not the user who suggested using cartesian product. SQL picked it while knowing it is not enabled.
Attachments
Issue Links
- relates to
-
SPARK-17298 Require explicit CROSS join for cartesian products by default
- Resolved