Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Won't Do
-
1.0.15, 1.1.6, 1.2.2
-
None
Description
Looking a little more into MCOL-2105, I spotted something in the code that might be wrong but I don't have time to chase it down right now.
When it's reading data for the small side, it's iterating over the rows deciding what to do depending on the type of join. I see this:
{{ if (antiWithMatchNulls && hasNullJoinColumn(row))
{
if (needsAllNullRows || !gotNullRow)
continue;
} }}
After that, the row gets inserted.
I think this means that if the row has a NULL join value, but is NOT an anti-join where it's supposed to match NULLs, the row gets inserted. In other words, if the join is a simple inner join, the NULL row gets inserted.
I THINK the operator at the top of the code above should be an || not an &&.