-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Native image build failures on latest GraalVM with Random/SplittableRandom initialized at build time #14904
Comments
For reference, instead of building Graal VM master from source, one could also use 21.1 dev builds from: |
PR for solving the runtime-init problem for modules using http-client (includes |
PR for |
PR for |
I've created #15889 to track the |
Elytron Security LDAP is actually a Graal issue: |
PR for |
PR for |
At this point most of the Random/SplittableRandom related failures should be fixed. I haven't done a full run, but it would be good to get one done with quarkus master to see what's still left. @zakkak could you help with that? |
Sure, I started https://github.com/zakkak/graalvm-quarkus-ci/actions/runs/681073992 to test latest Quarkus with latest GraalVM. |
In that case I just copied the GH workflow from oracle/graal to a new repo (zakkak/graalvm-quarkus-ci) and slightly edited it to use the latest dev branch of both graalvm and quarkus (the original workflow is using the latest release of quarkus with the latest dev branch of graalvm). I also made it possible to trigger the workflow on demand with different combinations of versions and repos
True, #15962 seems to be something new though |
@zakkak Thanks for the info! |
Job for latest Quarkus vs latest Graal now that #15962 is fixed: |
👍🏼 |
Now that looks a lot better already! Thank you. |
I list below the ITs that are still failing (based on https://github.com/zakkak/graalvm-quarkus-ci/actions/runs/683707199) Random/SplitRandom related
Other
|
PR for gRPC* tests #16008 |
Backport of quarkus-qe#75. Won't run Native as it's not working on 1.11 due to quarkusio/quarkus#14904
Backport of quarkus-qe#75. Won't run Native as it's not working on 1.11 due to quarkusio/quarkus#14904
Backport of #75. Won't run Native as it's not working on 1.11 due to quarkusio/quarkus#14904
I'm getting this error when converting one of my applications to Quarkus to build a native-image using GraalVM 21.1.0. From this thread I can't really tell what I need to do to get around it. I'm building my quarkus project with Quarkus 1.13.4.Final |
@akuzni2 I might be wrong but I think 21.1 is only supported in Quarkus 2.x onwards... |
That's correct,
|
hello, I have same issue on cxf extension.
|
Hi @dufoli, my understanding is that quarkiverse/quarkus-cxf@8804dda fixed the above issue, is that right? |
@zakkak yes |
HI @zakkak @dufoli thanks for commenting back. I've upgraded to Quarkus 2.0.0 and I still see the same issue cause by some AWS dependencies.
I'm not really sure how to perform the recommendation by the error message
If you have any ideas please let me know. |
@akuzni2 what aws extension are you using ? |
@dufoli I am getting exactly the same issue as @akuzni2 is getting when I try to invoke another lamba using
|
I have the same problem as @wsy89 and @akuzni2 with an AWS SDK library. Error: Detected an instance of Random/SplittableRandom class in the image heap. Instances created during image generation have cached seed values and don't behave as expected. To see how this object got instantiated use --trace-object-instantiation=java.util.Random. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image runtime by using the option --initialize-at-run-time=. Or you can write your own initialization methods and call them explicitly from your main entry point. Adding this to maven does not help: |
@EdwinKorsten @akuzni2
in additional build arg. |
@gsmet I am running also into the issue with org.apache.http.impl.auth.NTLMEngineImpl using aws s3 extension and apache client. Can we get a fix for that? |
@antonwiens Are you also using the HTTP client extension as a dependency as described here? |
@jerboaa No, i didn't. I pulled up the versions and didn`t know i had to add this, thats a nice hint, thanks and sorry for pulling this issue up again. Maybe a build error from the quarkus plugin would be nice, if the apache client dependency was added and the quarkus-apache-client extension was missing. Just as a hint for ppl upgrading or not reading the documentation properly :) |
I've been getting the same Update: managed to get it to work by following the sample code found here: https://github.com/quarkusio/quarkus-quickstarts/blob/main/amazon-dynamodb-quickstart/pom.xml. Specifically by the use of the |
@jmgtan Maybe you could improve the amazon-lambda guide? OSS FTW |
@jmgtan I've also started hitting the Random/SplittableRandom error with the latest AWS SDK. It is possible to workaround it by using |
@MarkusKramer I created quarkiverse/quarkus-amazon-services#220 to fix the issue in our extension. |
Describe the bug
Quarkus TS fail with latest Graal (see https://github.com/oracle/graal/actions/runs/546718036)
In the upcoming release of GraalVM (21.1) instances of Random/SplittableRandom class won't be allowed in the native image heap. The corresponding patch can be seen here.
As a result, moving forward Quarkus needs to ensure that its core and extensions reinitialize any classes holding instances of Random/SplittableRandom class.
In order to find out which classes to reinitialize one needs to run:
This will print out something like this:
Which indicates that Quarkus should reinitialize
NTLMEngineImpl
at runtime.Expected behavior
Tests should pass (at least most of them)
Actual behavior
Multiple integration tests fail.
fail with:
To Reproduce
mx --primary-suite-path substratevm --components='Native Image' build
export GRAALVM_HOME=/path/to/graal/sdk/latest_graalvm_home
./mvnw clean verify -Dnative -Dnative.surefire.skip -pl integration-tests/main
Environment (please complete the following information):
uname -a
orver
: Linux 5.10.10-200.fc33.x86_64java -version
: 11.0.9+10-jvmci-21.0-b03master
ca436f5a8d260027da4218761ee1b83a4d0b4a0fmaster
dac8d8bmvnw --version
orgradlew --version
): Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)The text was updated successfully, but these errors were encountered: