Revision a406473a525285888dbc29503443173df1d1c490 authored by Wang Gengliang on 27 September 2017, 15:40:31 UTC, committed by Herman van Hovell on 27 September 2017, 15:40:31 UTC
Back port https://github.com/apache/spark/pull/19362 to branch-2.2 ## What changes were proposed in this pull request? When inferring constraints from children, Join's condition can be simplified as None. For example, ``` val testRelation = LocalRelation('a.int) val x = testRelation.as("x") val y = testRelation.where($"a" === 2 && !($"a" === 2)).as("y") x.join.where($"x.a" === $"y.a") ``` The plan will become ``` Join Inner :- LocalRelation <empty>, [a#23] +- LocalRelation <empty>, [a#224] ``` And the Cartesian products check will throw exception for above plan. Propagate empty relation before checking Cartesian products, and the issue is resolved. ## How was this patch tested? Unit test Author: Wang Gengliang <ltnwgl@gmail.com> Closes #19366 from gengliangwang/branch-2.2.
1 parent b0f30b5
File | Mode | Size |
---|---|---|
pkg | ||
.gitignore | -rw-r--r-- | 66 bytes |
CRAN_RELEASE.md | -rw-r--r-- | 3.2 KB |
DOCUMENTATION.md | -rw-r--r-- | 474 bytes |
README.md | -rw-r--r-- | 3.5 KB |
WINDOWS.md | -rw-r--r-- | 2.2 KB |
check-cran.sh | -rwxr-xr-x | 2.4 KB |
create-docs.sh | -rwxr-xr-x | 1.8 KB |
create-rd.sh | -rwxr-xr-x | 1.5 KB |
find-r.sh | -rwxr-xr-x | 1.2 KB |
install-dev.bat | -rw-r--r-- | 1.1 KB |
install-dev.sh | -rwxr-xr-x | 1.6 KB |
install-source-package.sh | -rwxr-xr-x | 2.0 KB |
log4j.properties | -rw-r--r-- | 1.3 KB |
run-tests.sh | -rwxr-xr-x | 2.3 KB |
Computing file changes ...