-
Notifications
You must be signed in to change notification settings - Fork 506
Run JUnit CI Tests with Compiled Query Execution #1470
Run JUnit CI Tests with Compiled Query Execution #1470
Conversation
…dify Jenkinsfile to run (some) of the JUnit tests in compiled mode, want to test on a subset first before changing all of them
There may be some kinks in this PR that remain to be worked out, but I'm marking it |
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Codecov Report
@@ Coverage Diff @@
## master #1470 +/- ##
=======================================
Coverage 81.78% 81.78%
=======================================
Files 707 707
Lines 50356 50356
=======================================
+ Hits 41183 41184 +1
+ Misses 9173 9172 -1
Continue to review full report at Codecov.
|
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
1 similar comment
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Major Decrease in PerformanceSTOP: this PR has a major negative performance impact
|
Major Decrease in PerformanceSTOP: this PR has a major negative performance impact
|
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.
Generally LGTM, nice use of Python, question about the None
case, minor typo.
Performance Boost!Nice job! This PR has increased the throughput of the system. Could not find any performance results to compare for this commit. |
The time to finish the junit tests under |
Agreed @malin1993ml, was noticing the same thing, as you can see in the commits above where I had to bump the timeout for the JUnit tests twice in order to get them to run to completion before being terminated. I plan to look a bit closer at where exactly the huge jump in execution time is coming from, although its entirely possible that's just the current state of execution engine performance... do we have a robust comparison of the performance in interpreted vs compiled modes anywhere? |
I'm not sure. Maybe others have an idea of what should be the expected performance. |
Major Decrease in PerformanceSTOP: this PR has a major negative performance impact
|
Adding |
…removing asan even for debug builds
Don't have a passing CI build to link to because the pipeline failed (in end-to-end performance, unrelated to this PR), but I think the modifications to the bytecode compilation settings may have done the trick. After making the change, compiled JUnit tests consistently finished in ~20 minutes (often far fewer). I am hoping this will be deemed 'good enough' for the time being to push the PR through. |
Per the discussion in standup, I am going to briefly investigate the breakdown of the runtime overhead for tests run in compiled execution mode. Related issue is here. |
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
1 similar comment
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Performance Boost!Nice job! This PR has increased the throughput of the system. Could not find any performance results to compare for this commit. |
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
Minor Decrease in PerformanceBe warned: this PR may have decreased the throughput of the system slightly.
|
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.
Rubber stamp.
Closes #1223.
We have seen a number of bugs now that only surface under compiled or adaptive query execution modes, but our testing infrastructure fails to detect them. The reasons for this are manifold, but are primarily a result of the fact that:
This PR takes a step towards increasing our coverage of compiled and adaptive query execution modes by adding support for running JUnit tests in CI with compiled query execution. This will hopefully decrease the probability of introducing new, uncaught bugs as we continue to modify and improve the execution engine and related aspects of the system.
I intended this PR to be solely an update to the CI infrastructure (i.e. the Jenkinsfile) but I also found it necessary to modify some of our testing infrastructure (Python implementation) to add the desired functionality.