-
Notifications
You must be signed in to change notification settings - Fork 242
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
Add UDF compiler skeleton #434
Conversation
} | ||
|
||
def attemptToReplaceExpression(plan: LogicalPlan, exp: Expression): Expression = { | ||
exp |
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.
Entrance of compiler. implementations will come in next PR.
@wjxiz1992 for me I did want to keep history, but I think it can be squashed. There's a lot of repetition that can be made into a single commit by that same author. If others think history is not as important here, that's fine we can go with a simpler approach. Note there are some commits at the beginning of this PR (like the metrics changes), and in the middle (like the one about splitting host/device vectors) that need to be removed all-together. |
Ok I do see what happened here, so there were a number of commits, and then a new one that basically redo's everything. Yeah this is a tough one, and I am not sure we can preserve anything. At this stage @wjxiz1992 I think what would work best is to squash all commits and have a single one to introduce the skeleton. When you think one of the commits was a collaborative effort between other authors, perhaps we can use: https://docs.github.com/en/github/committing-changes-to-your-project/creating-a-commit-with-multiple-authors#creating-co-authored-commits-on-the-command-line Thoughts? |
I've squashed the huge commits and leave only one to describe this PR with coauthors added. I'll wait for Sean @seanprime7 to confirm if he think it's fine. |
I think it is okay to squash commits in this MR. |
|
||
override def apply(plan: LogicalPlan): LogicalPlan = { | ||
val conf = new RapidsConf(plan.conf) | ||
if (conf.isUdfCompilerEnabled) { |
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.
Control whether to use the compiler or not.
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.
Just as a side note going forward we will require that all commits have a signoff with them.
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.
Please note that going forward all commits will need a sign off with them.
See https://github.com/NVIDIA/spark-rapids/blob/branch-0.2/CONTRIBUTING.md#sign-your-work
build |
The changes look good, but the build appears to be failing for no fault of your own. Could you please upmerge to the latest code so we can get a clean build? |
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.
Builds for me locally. This only replaces UDFs in project, and there are other cases where we'd want to do this. But I think we can handle that later.
Also the udf profile is ON by default, and the jar is not being added to the dist jar, I think we can figure that out later too.
But yeah verify
is failing bc of the scaladoc issues, not related to the PR.
- This change adds a udf-compiler plugin without detailed compiler implementations - To keep previous commit history and for a better review, this change removes the detailed compiler implementation based on previous commits - This change keeps the unit test framework but removes test cases. - Compiler implementations will come in next MR Co-authored-by: Sean Lee <[email protected]> Co-authored-by: Nicholas Edelman <[email protected]> Co-authored-by: Alessandro Bellina <[email protected]> Signed-off-by: wjxiz1992 <[email protected]>
48b15fb
build |
Thanks for Alessandro's help, rebased to latest codes. CI passed. |
thanks @wjxiz1992 |
- This change adds a udf-compiler plugin without detailed compiler implementations - To keep previous commit history and for a better review, this change removes the detailed compiler implementation based on previous commits - This change keeps the unit test framework but removes test cases. - Compiler implementations will come in next MR Co-authored-by: Sean Lee <[email protected]> Co-authored-by: Nicholas Edelman <[email protected]> Co-authored-by: Alessandro Bellina <[email protected]> Signed-off-by: wjxiz1992 <[email protected]> Co-authored-by: Alessandro Bellina <[email protected]> Co-authored-by: Sean Lee <[email protected]> Co-authored-by: Nicholas Edelman <[email protected]>
- This change adds a udf-compiler plugin without detailed compiler implementations - To keep previous commit history and for a better review, this change removes the detailed compiler implementation based on previous commits - This change keeps the unit test framework but removes test cases. - Compiler implementations will come in next MR Co-authored-by: Sean Lee <[email protected]> Co-authored-by: Nicholas Edelman <[email protected]> Co-authored-by: Alessandro Bellina <[email protected]> Signed-off-by: wjxiz1992 <[email protected]> Co-authored-by: Alessandro Bellina <[email protected]> Co-authored-by: Sean Lee <[email protected]> Co-authored-by: Nicholas Edelman <[email protected]>
Signed-off-by: spark-rapids automation <[email protected]>
implementations
removes the detailed compiler implementation based on previous commits