Skip to content
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

Fatal error: com.oracle.graal.pointsto.util.AnalysisError$ParsingError: Error encountered while parsing com.oracle.svm.core.thread.Target_java_lang_VirtualThread.threadState(Target_java_lang_VirtualThread.java:167) #9653

Open
ksanjeev9211 opened this issue Sep 11, 2024 · 2 comments
Assignees

Comments

@ksanjeev9211
Copy link

Trying to create the native image of a spring boot application.

Describe GraalVM and your environment:

  • GraalVM version Liberica-NIK-23.1.4-1 (build 21.0.4+9-LTS)
  • JDK major version: 21
  • OS: WSL2 (Ubuntu 24
  • Architecture: AMD64
    SLF4J(W): No SLF4J providers were found.
SLF4J(W): Defaulting to no-operation (NOP) logger implementation
SLF4J(W): See https://www.slf4j.org/codes.html#noProviders for further details.
[2/8] Performing analysis...  []                                                                        (17.6s @ 1.92GB)
   14,825 reachable types   (77.9% of   19,035 total)
   19,200 reachable fields  (56.0% of   34,284 total)
   60,069 reachable methods (48.0% of  125,048 total)
    6,012 types, 1,116 fields, and 9,749 methods registered for reflection

Fatal error: com.oracle.graal.pointsto.util.AnalysisError$ParsingError: Error encountered while parsing com.oracle.svm.core.thread.Target_java_lang_VirtualThread.threadState(Target_java_lang_VirtualThread.java:167) 
Parsing context:
   at java.lang.Thread.getState(Thread.java:2738)
   at java.util.concurrent.ForkJoinPool$WorkQueue.isApparentlyUnblocked(ForkJoinPool.java:1449)
   at java.util.concurrent.ForkJoinPool.toString(ForkJoinPool.java:3403)
   at java.util.Formatter$FormatSpecifier.printString(Formatter.java:3158)
   at java.util.Formatter$FormatSpecifier.print(Formatter.java:3036)
   at java.util.Formatter.format(Formatter.java:2797)
   at java.util.Formatter.format(Formatter.java:2728)
   at java.lang.String.format(String.java:4390)
   at jdk.internal.util.Preconditions.outOfBoundsMessage(Preconditions.java:242)
   at jdk.internal.util.Preconditions$4.apply(Preconditions.java:213)
   at jdk.internal.util.Preconditions$4.apply(Preconditions.java:210)
   at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:98)
   at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex(Preconditions.java:112)
   at jdk.internal.util.Preconditions.checkFromToIndex(Preconditions.java:349)
   at java.lang.StringUTF16.checkBoundsBeginEnd(StringUTF16.java:1621)
   at java.lang.StringUTF16.getChars(StringUTF16.java:1361)
   at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:837)
   at java.lang.String.repeat(String.java:4662)
   at java.lang.Class.getTypeName(Class.java:1816)
   at com.oracle.svm.core.reflect.ReflectionAccessorHolder.throwIllegalArgumentException(ReflectionAccessorHolder.java:127)
   at com.oracle.svm.core.reflect.ReflectionAccessorHolder.throwIllegalArgumentExceptionWithoutReceiver(ReflectionAccessorHolder.java:102)
   at com.oracle.svm.core.reflect.ReflectionAccessorHolder.invoke_75ce93443a36c6518e1c0b8aafcb545baaa247d4(generated:0)
   at static root method.(Unknown Source)

        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.AnalysisError.parsingError(AnalysisError.java:149)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:184)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.ensureFlowsGraphCreated(MethodTypeFlow.java:153)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.getOrCreateMethodFlowsGraphInfo(MethodTypeFlow.java:111)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.typestate.DefaultVirtualInvokeTypeFlow.onObservedUpdate(DefaultVirtualInvokeTypeFlow.java:114)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.TypeFlow.update(TypeFlow.java:620)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis$1.run(PointsToAnalysis.java:491)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.executeCommand(CompletionExecutor.java:187)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.lambda$executeService$0(CompletionExecutor.java:171)
        at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1423)
        at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
        at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 24
        at java.base/jdk.internal.util.Preconditions$2.apply(Preconditions.java:63)
        at java.base/jdk.internal.util.Preconditions$2.apply(Preconditions.java:60)
        at java.base/jdk.internal.util.Preconditions$4.apply(Preconditions.java:213)
        at java.base/jdk.internal.util.Preconditions$4.apply(Preconditions.java:210)
        at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:98)
        at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:106)
        at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:302)
        at java.base/java.lang.invoke.VarHandleReferences$Array.getVolatile(VarHandleReferences.java:604)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.heap.TypeData.getFieldValue(TypeData.java:83)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.heap.TypeData.readFieldValue(TypeData.java:92)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.heap.ImageHeapScanner.onFieldRead(ImageHeapScanner.java:125)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisField.registerAsRead(AnalysisField.java:287)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.registerUsedElements(MethodTypeFlowBuilder.java:305)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:237)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:621)
        at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:167)
        ... 13 more
------------------------------------------------------------------------------------------------------------------------
                        2.7s (9.1% of total time) in 78 GCs | Peak RSS: 2.93GB | CPU load: 13.00
========================================================================================================================
Finished generating 'fact-processor' in 28.2s.
com.oracle.svm.driver.NativeImage$NativeImageError
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.showError(NativeImage.java:2309)
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.build(NativeImage.java:1886)
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.performBuild(NativeImage.java:1845)
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.main(NativeImage.java:1827)
        at java.base@21.0.4/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)
@selhagani
Copy link
Member

Hi @ksanjeev9211,
Thank you for reaching out to us.

Did you try to create your native image using the official GraalVM LTS version? you can find it here

@selhagani selhagani self-assigned this Sep 11, 2024
@ksanjeev9211
Copy link
Author

with 'gcr.io/paketo-buildpacks/graalvm' things seem to work, looks like it's liberica which is is causing the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants