-
Notifications
You must be signed in to change notification settings - Fork 1k
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
feat: Implement complex expressions for table functions #3683
Conversation
throw new IllegalArgumentException("Can't find input column " + columnName); | ||
} | ||
final Expression expression = functionCall.getArguments().get(0); | ||
final ExpressionMetadata expressionMetadata = |
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.
I feel like this doesn't belong here - instead, we should be resolving all complex expressions before running the KudtfFlatMapper
. This has a few benefits, the first is the performance benefit that I had mentioned earlier (we want to evaluate complex expressions once, not per every output row) and the second is that we're not treating arguments to UDTFs any differently than any other expression.
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 I follow - this code is before the FlatMapper is run.
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.
Talked offline, because this PR is blocking lots of others I'm going to let it through as is and come up with a more detailed ticket describing what I mean by the comment.
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.
3852c7e
to
3f9fe9a
Compare
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.
LGTM with the caveat that we'll look into my suggestion after these features are merged
3f9fe9a
to
95a325a
Compare
138ffc7
to
8f182e3
Compare
Description
Fixes #3514
This is the 2nd PR in a stack. Please note this PR is stacked on #3685, so please don't review commits from the previous PR again.
With this PR table functions can now be arbitrarily complex expressions.
Testing done
New QTT test
Reviewer checklist