You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am testing a patch for empty relations for the broadcast* joins and ran into an edge case that is a bug in 21.12 where we return nothing when the CPU returns results, or the other way around (we return a result where the CPU returns nothing), this is specific to unconditional joins.
This will fail for BuildRight: Left, LeftSemi and LeftAnti. I think I have a good idea about where to fix for the LeftSemi case anyway. We currently just return the left relation, whereas spark has other logic here:
I am testing a patch for empty relations for the broadcast* joins and ran into an edge case that is a bug in 21.12 where we return nothing when the CPU returns results, or the other way around (we return a result where the CPU returns nothing), this is specific to unconditional joins.
This test can reproduce the issue:
This will fail for BuildRight: Left, LeftSemi and LeftAnti. I think I have a good idea about where to fix for the LeftSemi case anyway. We currently just return the left relation, whereas spark has other logic here:
I think this also covers LeftAnti, but I haven't tested it.
The text was updated successfully, but these errors were encountered: