-
-
Notifications
You must be signed in to change notification settings - Fork 212
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use EvaluateCondition for conditions in join statements #1926
Conversation
sql/rowexec/join_iters.go
Outdated
return nil, err | ||
} else if res == false { | ||
} else if sql.IsFalse(res) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure whether this should be !sql.IsTrue
like the other cases, but I've left it as IsFalse to keep to current behaviour
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should definitely be !sql.IsTrue
so that it handles null cases correctly.
If you fix that then this PR looks perfect.
Thanks for the PR, @adjeiv! The PR looks good! I'm reviewing it right now, just to make sure that the slightly different behavior around lateral join (which you noted in your comment) is correct. |
@nicktobey do we know why the tests failed here? |
The windows tests are experiencing transient OOM issues. There was a discussion about how to fix them, I'll ask about that again. In the meantime, I don't think windows tests failing should block merges if the ubuntu and macos tests are passing. |
Shall we merge this then? |
Fixes dolthub/dolt#6412
Use the given EvaluateCondition util function to determine whether a join condition is satisfied, which accounts for truthy integer values as mentioned in the linked issue.