You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description
GraalVM CE 20.3 was released in Nov 17 2020 and it would be nice to upgrade Quarkus to support this new release (which is also an LTS release).
However it looks like this is not possible and this issue aims to capture why.
Current Status
Despite efforts on resolving Quarkus issues with 20.3:
there is still an outstanding issues that we were not able to work around on the Quarkus side (see #13644).
Blocking issue
In GraalVM 20.2 there was an issue with color profiles that was (partially) fixed in 20.3 through oracle/graal@39d7ff7 by requiring ColorSpace and ICC_Profile classes to be reinitialized at runtime and by forbidding any instances of the said classes in the native image heap.
Unfortunately though to get an instance of ICC_Profile at runtime one typically invokes getInstance which ends up trying to load libawt at runtime
(see #13644 (comment)) something that is not supported in 20.3.
The whole issue seems to be fixed in master through oracle/graal@5d2997a, which is expected to land in GraalVM 21.0 on January.
Way forward
At this point in time it looks like upgrading to 20.3 is not possible without reverting oracle/graal@39d7ff7 or backporting of oracle/graal@5d2997a.
So unless one of the above gets done on the GraalVM side, moving to 20.3 will break tests and possibly use cases that used to embed ColorSpace and/or ICC_Profile instances in the native image heap.
The text was updated successfully, but these errors were encountered:
Will GraalVM 20.3 fix any other outstanding issue in Quarkus? Otherwise I think it's safer to wait for 21.0 instead.
No. However, GraalVM 20.3 is an LTS release, so it appears to be a better target than 21.0 (at least for now).
According to oracle/graal#3077 the necessary changes to make Quarkus tests pass will be part of the 20.3.1 release.
Description
GraalVM CE 20.3 was released in Nov 17 2020 and it would be nice to upgrade Quarkus to support this new release (which is also an LTS release).
However it looks like this is not possible and this issue aims to capture why.
Current Status
Despite efforts on resolving Quarkus issues with 20.3:
there is still an outstanding issues that we were not able to work around on the Quarkus side (see #13644).
Blocking issue
In GraalVM 20.2 there was an issue with color profiles that was (partially) fixed in 20.3 through oracle/graal@39d7ff7 by requiring
ColorSpace
andICC_Profile
classes to be reinitialized at runtime and by forbidding any instances of the said classes in the native image heap.Unfortunately though to get an instance of
ICC_Profile
at runtime one typically invokesgetInstance
which ends up trying to load libawt at runtime(see #13644 (comment)) something that is not supported in 20.3.
The whole issue seems to be fixed in
master
through oracle/graal@5d2997a, which is expected to land in GraalVM 21.0 on January.Way forward
At this point in time it looks like upgrading to 20.3 is not possible without reverting oracle/graal@39d7ff7 or backporting of oracle/graal@5d2997a.
So unless one of the above gets done on the GraalVM side, moving to 20.3 will break tests and possibly use cases that used to embed
ColorSpace
and/orICC_Profile
instances in the native image heap.The text was updated successfully, but these errors were encountered: