-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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 compilation of programs using sqlite-jdbc fails with -H:-ParseOnce
#4200
Labels
Comments
zakkak
added a commit
to zakkak/mandrel
that referenced
this issue
Jan 12, 2022
zakkak
added a commit
to zakkak/mandrel
that referenced
this issue
Jan 12, 2022
The actual problem is an abstract class being marked as instantiated, see #4202 (comment) |
Fixed by #4403 |
4 tasks
mergify bot
pushed a commit
to enso-org/enso
that referenced
this issue
Sep 22, 2022
This PR adds a possibility to generate native-image for engine-runner. Note that due to on-demand loading of stdlib, programs that make use of it are currently not yet supported (that will be resolved at a later point). The purpose of this PR is only to make sure that we can generate a bare minimum runner because due to lack TruffleBoundaries or misconfiguration in reflection config, this can get broken very easily. To generate a native image simply execute: ``` sbt> engine-runner-native/buildNativeImage ... (wait a few minutes) ``` The executable is called `runner` and can be tested via a simple test that is in the resources. To illustrate the benefits see the timings difference between the non-native and native one: ``` >time built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/bin/enso --no-ir-caches --in-project test/Tests/ --run engine/runner-native/src/test/resources/Factorial.enso 6 720 real 0m4.503s user 0m9.248s sys 0m1.494s > time ./runner --run engine/runner-native/src/test/resources/Factorial.enso 6 720 real 0m0.176s user 0m0.042s sys 0m0.038s ``` # Important Notes Notice that due to a [bug in GraalVM](oracle/graal#4200), which is already fixed in 22.x, and us still being on 21.x for the time being, I had to add a workaround to our sbt build to build a different fat jar for native image. To workaround it I had to exclude sqlite jar. Hence native image task is on `engine-runner-native` and not on `engine-runner`. Will need to add the above command to CI.
This was referenced Feb 6, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the issue
Native compilation of programs using sqlite-jdbc throws exception (see in More details for the stack trace) when passing
-H:-ParseOnce
.Steps to reproduce the issue
Describe GraalVM and your environment:
More details
The text was updated successfully, but these errors were encountered: