-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
Quarkus' DiagnosticPrinter incompatible with GraalVM / Mandrel 22.1-dev #23517
Comments
Do we still need |
I've been wondering the same for a while... |
I don't know, I don't use it. If people do actually use it then it seems like the sort of thing that you could put in a library rather than Quarkus core. |
I propose we just remove it for starters... |
This removes the dependency on the GraalVM internal `com.oracle.svm.core.posix.headers.Pthread`. Closes quarkusio#23517
That would still leave us with a dependency on GraalVM's internals, i.e.
I have created #23542 to resolve this issue without removing |
having ability to get thread dump in native is useful. is there another way to get that than DIagnosticPrinter? |
You should be able to get the thread dump from
or one at a time:
|
@zakkak Could you add that info the native reference guide? Maybe as an FAQ entry on how to get a thread dump? |
This removes the dependency on the GraalVM internal `com.oracle.svm.core.posix.headers.Pthread`. Closes quarkusio#23517 (cherry picked from commit d928f25)
Describe the bug
A recent GraalVM refactoring moved
com.oracle.svm.core.posix.thread.PosixJavaThreads#getPthreadIdentifier
andcom.oracle.svm.core.posix.thread.PosixJavaThreads#hasThreadIdentifier
to a new classcom.oracle.svm.core.posix.thread.PosixPlatformJavaThreads
making the following code to cause native-image failures since GraalVM fails to find the corresponding methods:quarkus/core/runtime/src/main/java/io/quarkus/runtime/graal/DiagnosticPrinter.java
Lines 18 to 26 in 5036e2f
Expected behavior
Quarkus should work with the upcoming 22.1 GraalVM release
Actual behavior
Quarkus fails with:
See https://github.com/graalvm/mandrel/runs/5103314555?check_suite_focus=true#step:11:177
How to Reproduce?
Output of
uname -a
orver
GH runner
Output of
java -version
11.0.14 and 17.0.2
GraalVM version (if different from Java)
22.1.0-deva0db6e1
Quarkus version or git rev
8de3797
Build tool (ie. output of
mvnw --version
orgradlew --version
)Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Additional information
This issue is related to the discussion in oracle/graal#4146.
DiagnosticsPrinter
is relying on GraalVM internals, as a result it's expected for such code segments to cause issues from time to time.The question is: Do Quarkus users and devs use the
DiagnosticsPrinter
? Is it worth performing version checks (and complicating things by not using public APIs) to make it work or is it something we could remove?cc @geoand @gsmet @stuartwdouglas
The text was updated successfully, but these errors were encountered: