-
Notifications
You must be signed in to change notification settings - Fork 3
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
Build perf app #254
Build perf app #254
Conversation
@Karm I'm a bit concerned that the test suite is growing too big and the burden to get them fixed becomes a problem. Could we perhaps ensure that those performance profiles don't run by default and only run when activated (which should be done on some jobs we run, but definitely not all). Especially in GHA, test failures pop up frequently with new warnings and produce noise (case in point: current test failures in this PR). |
Thx @jerboaa for the comment. FYI @zakkak
This PR is a draft for Quarkus 2.13.3 as the subject of the PR states, i.e. as you can see 2.13.3.Final GA jobs are green here. Furthermore, this is affecting the
We enable it here on the CI because here we are "testing the testsuite". Regarding adding apps: EDIT: Meh. We can't replace one with the other. While |
Mandrel CI uses this So I'd assume it would run this one too? |
Nope, see it's tagged |
OK. Thanks. I'm probably confusing it with the JFR perf test then. |
That is right, we wanted those on even for regular runs, so they are annotated as The fact that it confuses you means I botched the user experience of the tags taxonomy. I guess we can refactor that to some more logical parts. |
|
testsuite/src/it/java/org/graalvm/tests/integration/PerfCheckTest.java
Outdated
Show resolved
Hide resolved
testsuite/src/it/java/org/graalvm/tests/integration/PerfCheckTest.java
Outdated
Show resolved
Hide resolved
testsuite/src/it/java/org/graalvm/tests/integration/utils/WhitelistLogLines.java
Outdated
Show resolved
Hide resolved
// RestEasy intermittently | ||
p.add(Pattern.compile(".*Closing a class org.jboss.resteasy.client.*")); | ||
p.add(Pattern.compile(".*Please close clients yourself.*")); |
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 wonder if this is a quarkus problem or a test issue that needs handling there. Either way, further investigation seems waranted. See quarkusio/quarkus#10813 (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.
I thought it was me, not bothering with the rest client here:
So I did treat the closable this time around:
...to no avail. IMHO it's something else. Like CDI scope being wrong? Perhaps it's expected to be just RequestScoped and by minimizing boilerplate and jamming everything together in App scoped in the test case, we are triggering it. It's not specific to native though.
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'm happy enough to have a quarkus issue created which tracks investigating it, fwiw.
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.
OK, given that you'll file a quarkus issue on the http components client closing issue. Thanks!
THX for the review. I've bee cooking this one for some days :-) Ad issue: I'll give it an hour to explore the CDI scope and fixing it in the app code, if it fails, I'll open an issue with a reproducer, linking to the old one. |
@jerboaa I am working on that in a separate PR. I found out that the problem disappears if wrap in try-with-resources...except for some older versions, where either as a bug or as a feature, the Client isn't Closable and thus you have to call .close() manually in finally block the old way. I am testing it now, but it seems it's just a clumsy API inconsistencies over the rest easy versions in Quarkus that could be dealt with in the user's codebase. |
That's what I thought. So we ought to fix the test and then remove the allow-listing. |
It is happening in #255 |
Adds a new build perf app that sports more dependencies, including two databases and tests for all demo functionality. Demo code is present so as the deps are not optimized away.
This PR is a WIP, I just confirmed it work with the oldest Q we work with in the TS regularly. I will add ports presently to this PR.