[BUG] GraalVM Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap
Describe the bug
I have a Quarkus application, which sends some messages to Azure Storage Queue, however after adding Azure storage queue dependency, the native image build fails with following error "Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default. This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time."
Exception or Stack Trace
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.handler.ssl.ReferenceCountedOpenSslContext.refCnt of constant
io.netty.handler.ssl.OpenSslClientContext@77ae0db: io.netty.handler.ssl.OpenSslClientContext@77ae0db
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@b257e5: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@b257e5: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:39)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x00000007c17799e8.accept(Unknown Source)
at org.jboss.logmanager.formatters.FlagSet.forEach(FlagSet.java:65)
at io.quarkus.arc.impl.ComputingCacheContextInstances.removeEach(ComputingCacheContextInstances.java:40)
at io.quarkus.arc.impl.AbstractSharedContext.destroy(AbstractSharedContext.java:104)
at io.quarkus.arc.impl.ArcContainerImpl.shutdown(ArcContainerImpl.java:455)
at io.quarkus.arc.Arc.shutdown(Arc.java:65)
at io.quarkus.arc.runtime.ArcRecorder$1.run(ArcRecorder.java:53)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.handler.ssl.ReferenceCountedOpenSslContext.refCnt of constant
io.netty.handler.ssl.OpenSslClientContext@78d38009: io.netty.handler.ssl.OpenSslClientContext@78d38009
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@3fb76d58: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@3fb76d58: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:36)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x00000007c17799e8.accept(Unknown Source)
at org.jboss.logmanager.formatters.FlagSet.forEach(FlagSet.java:65)
at io.quarkus.arc.impl.ComputingCacheContextInstances.removeEach(ComputingCacheContextInstances.java:40)
at io.quarkus.arc.impl.AbstractSharedContext.destroy(AbstractSharedContext.java:104)
at io.quarkus.arc.impl.ArcContainerImpl.shutdown(ArcContainerImpl.java:455)
at io.quarkus.arc.Arc.shutdown(Arc.java:65)
at io.quarkus.arc.runtime.ArcRecorder$1.run(ArcRecorder.java:53)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.calculateOutNetBufSize(int, int). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.allocateWrapBuffer(SslHandler.java:284)
Parsing context:
at io.netty.handler.ssl.SslHandler.allocateOutNetBuf(SslHandler.java:2368)
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:867)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:822)
at io.netty.handler.ssl.SslHandler.handleUnwrapThrowable(SslHandler.java:1369)
at io.netty.handler.ssl.SslHandler.access$1000(SslHandler.java:171)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.taskError(SslHandler.java:1732)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.resumeOnEventExecutor(SslHandler.java:1843)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.access$2000(SslHandler.java:1711)
at io.netty.handler.ssl.SslHandler$SslTasksRunner$2.run(SslHandler.java:1872)
at sun.nio.ch.IOUtil$LinkedRunnable.run(IOUtil.java:529)
at sun.nio.ch.IOUtil.releaseScopes(IOUtil.java:515)
at sun.nio.ch.IOUtil.write(IOUtil.java:251)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:578)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:430)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:931)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.calculateRequiredOutBufSpace(int, int). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.calculateRequiredOutBufSpace(SslHandler.java:290)
Parsing context:
at io.netty.handler.ssl.SslHandler.wrapMultiple(SslHandler.java:1062)
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:864)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:822)
at io.netty.handler.ssl.SslHandler.handleUnwrapThrowable(SslHandler.java:1369)
at io.netty.handler.ssl.SslHandler.access$1000(SslHandler.java:171)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.taskError(SslHandler.java:1732)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.resumeOnEventExecutor(SslHandler.java:1843)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.access$2000(SslHandler.java:1711)
at io.netty.handler.ssl.SslHandler$SslTasksRunner$2.run(SslHandler.java:1872)
at sun.nio.ch.IOUtil$LinkedRunnable.run(IOUtil.java:529)
at sun.nio.ch.IOUtil.releaseScopes(IOUtil.java:515)
at sun.nio.ch.IOUtil.write(IOUtil.java:251)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:578)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:430)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:931)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.unwrap(java.nio.ByteBuffer[], java.nio.ByteBuffer[]). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.unwrap(SslHandler.java:258)
Parsing context:
at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1445)
at io.netty.handler.ssl.SslHandler.wrapNonAppData(SslHandler.java:1011)
at io.netty.handler.ssl.SslHandler.handshake(SslHandler.java:2192)
at io.netty.handler.ssl.SslHandler.startHandshakeProcessing(SslHandler.java:2108)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:794)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:2074)
at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:2043)
at io.netty.handler.ssl.SslHandler.close(SslHandler.java:754)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:761)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:733)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:560)
at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:957)
at io.netty.channel.AbstractChannel.close(AbstractChannel.java:244)
at reactor.netty.transport.TransportConnector$MonoChannelPromise.tryFailure(TransportConnector.java:563)
at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetFailure(AbstractChannel.java:999)
at io.netty.channel.AbstractChannel$AbstractUnsafe.doClose0(AbstractChannel.java:759)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:731)
at io.netty.channel.AbstractChannel$AbstractUnsafe.handleWriteError(AbstractChannel.java:950)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:933)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved type during parsing: com.jcraft.jzlib.Deflater. This error is reported at image build time because class io.netty.handler.codec.compression.JZlibEncoder is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.codec.compression.ZlibCodecFactory.newZlibEncoder(ZlibCodecFactory.java:79)
Parsing context:
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.compressContent(DeflateEncoder.java:119)
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode(DeflateEncoder.java:88)
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode(DeflateEncoder.java:41)
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:90)
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116)
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891)
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875)
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984)
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000)
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1025)
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:306)
at reactor.netty.channel.ChannelOperations.lambda$sendUsing$4(ChannelOperations.java:329)
at reactor.netty.channel.ChannelOperations$$Lambda/0x00000007c17bedb0.apply(Unknown Source)
at reactor.core.publisher.MonoUsing.subscribe(MonoUsing.java:85)
at reactor.core.publisher.Mono.subscribe(Mono.java:4491)
at reactor.core.publisher.Mono.block(Mono.java:1741)
at com.azure.core.implementation.http.rest.AsyncRestProxy.handleRestReturnType(AsyncRestProxy.java:266)
at com.azure.core.implementation.http.rest.AsyncRestProxy.invoke(AsyncRestProxy.java:98)
at com.azure.core.implementation.http.rest.RestProxyBase.invoke(RestProxyBase.java:124)
at com.azure.core.http.rest.RestProxy.invoke(RestProxy.java:95)
at jdk.proxy4.$Proxy101.annotationType(Unknown Source)
at root method.(Unknown Source)
Error: Discovered unresolved type during parsing: io.netty.util.internal.logging.Log4J2Logger. This error is reported at image build time because class io.netty.util.internal.logging.Log4J2LoggerFactory is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.util.internal.logging.InternalLoggerFactory.newDefaultFactory(InternalLoggerFactory.java:42)
Parsing context:
at io.netty.util.internal.logging.InternalLoggerFactory.getDefaultFactory(InternalLoggerFactory.java:111)
at io.netty.util.internal.logging.InternalLoggerFactory.getInstance(InternalLoggerFactory.java:134)
at io.netty.buffer.ByteBufUtil.<clinit>(ByteBufUtil.java:61)
at static root method.(Unknown Source)
com.oracle.svm.core.util.UserError$UserException: Unsupported features in 7 methods
Detailed message:
Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.handler.ssl.ReferenceCountedOpenSslContext.refCnt of constant
io.netty.handler.ssl.OpenSslClientContext@77ae0db: io.netty.handler.ssl.OpenSslClientContext@77ae0db
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@b257e5: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@b257e5: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:39)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x00000007c17799e8.accept(Unknown Source)
at org.jboss.logmanager.formatters.FlagSet.forEach(FlagSet.java:65)
at io.quarkus.arc.impl.ComputingCacheContextInstances.removeEach(ComputingCacheContextInstances.java:40)
at io.quarkus.arc.impl.AbstractSharedContext.destroy(AbstractSharedContext.java:104)
at io.quarkus.arc.impl.ArcContainerImpl.shutdown(ArcContainerImpl.java:455)
at io.quarkus.arc.Arc.shutdown(Arc.java:65)
at io.quarkus.arc.runtime.ArcRecorder$1.run(ArcRecorder.java:53)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.handler.ssl.ReferenceCountedOpenSslContext.refCnt of constant
io.netty.handler.ssl.OpenSslClientContext@78d38009: io.netty.handler.ssl.OpenSslClientContext@78d38009
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@3fb76d58: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@3fb76d58: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:36)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x00000007c17799e8.accept(Unknown Source)
at org.jboss.logmanager.formatters.FlagSet.forEach(FlagSet.java:65)
at io.quarkus.arc.impl.ComputingCacheContextInstances.removeEach(ComputingCacheContextInstances.java:40)
at io.quarkus.arc.impl.AbstractSharedContext.destroy(AbstractSharedContext.java:104)
at io.quarkus.arc.impl.ArcContainerImpl.shutdown(ArcContainerImpl.java:455)
at io.quarkus.arc.Arc.shutdown(Arc.java:65)
at io.quarkus.arc.runtime.ArcRecorder$1.run(ArcRecorder.java:53)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.calculateOutNetBufSize(int, int). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.allocateWrapBuffer(SslHandler.java:284)
Parsing context:
at io.netty.handler.ssl.SslHandler.allocateOutNetBuf(SslHandler.java:2368)
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:867)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:822)
at io.netty.handler.ssl.SslHandler.handleUnwrapThrowable(SslHandler.java:1369)
at io.netty.handler.ssl.SslHandler.access$1000(SslHandler.java:171)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.taskError(SslHandler.java:1732)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.resumeOnEventExecutor(SslHandler.java:1843)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.access$2000(SslHandler.java:1711)
at io.netty.handler.ssl.SslHandler$SslTasksRunner$2.run(SslHandler.java:1872)
at sun.nio.ch.IOUtil$LinkedRunnable.run(IOUtil.java:529)
at sun.nio.ch.IOUtil.releaseScopes(IOUtil.java:515)
at sun.nio.ch.IOUtil.write(IOUtil.java:251)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:578)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:430)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:931)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.calculateRequiredOutBufSpace(int, int). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.calculateRequiredOutBufSpace(SslHandler.java:290)
Parsing context:
at io.netty.handler.ssl.SslHandler.wrapMultiple(SslHandler.java:1062)
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:864)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:822)
at io.netty.handler.ssl.SslHandler.handleUnwrapThrowable(SslHandler.java:1369)
at io.netty.handler.ssl.SslHandler.access$1000(SslHandler.java:171)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.taskError(SslHandler.java:1732)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.resumeOnEventExecutor(SslHandler.java:1843)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.access$2000(SslHandler.java:1711)
at io.netty.handler.ssl.SslHandler$SslTasksRunner$2.run(SslHandler.java:1872)
at sun.nio.ch.IOUtil$LinkedRunnable.run(IOUtil.java:529)
at sun.nio.ch.IOUtil.releaseScopes(IOUtil.java:515)
at sun.nio.ch.IOUtil.write(IOUtil.java:251)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:578)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:430)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:931)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.unwrap(java.nio.ByteBuffer[], java.nio.ByteBuffer[]). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.unwrap(SslHandler.java:258)
Parsing context:
at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1445)
at io.netty.handler.ssl.SslHandler.wrapNonAppData(SslHandler.java:1011)
at io.netty.handler.ssl.SslHandler.handshake(SslHandler.java:2192)
at io.netty.handler.ssl.SslHandler.startHandshakeProcessing(SslHandler.java:2108)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:794)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:2074)
at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:2043)
at io.netty.handler.ssl.SslHandler.close(SslHandler.java:754)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:761)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:733)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:560)
at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:957)
at io.------------------------------------------------------------------------------------------------------------------------
at io.netty.channel.AbstractChannel.close(AbstractChannel.java:244)
at reactor.netty.transport.TransportConnector$MonoChannelPromise.tryFailure(TransportConnector.java:563)
at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetFailure(AbstractChannel.java:999)
at io.netty.channel.AbstractChannel$AbstractUnsafe.doClose0(AbstractChannel.java:759)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:731)
at io.netty.channel.AbstractChannel$AbstractUnsafe.handleWriteError(AbstractChannel.java:950)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:933)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved type during parsing: com.jcraft.jzlib.Deflater. This error is reported at image build time because class io.netty.handler.codec.compression.JZlibEncoder is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.codec.compression.ZlibCodecFactory.newZlibEncoder(ZlibCodecFactory.java:79)
Parsing context:
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.compressContent(DeflateEncoder.java:119)
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode(DeflateEncoder.java:88)
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode(DeflateEncoder.java:41)
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:90)
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116)
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891)
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875)
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984)
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000)
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1025)
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:306)
at reactor.netty.channel.ChannelOperations.lambda$sendUsing$4(ChannelOperations.java:329)
at reactor.netty.channel.ChannelOperations$$Lambda/0x00000007c17bedb0.apply(Unknown Source)
at reactor.core.publisher.MonoUsing.subscribe(MonoUsing.java:85)
at reactor.core.publisher.Mono.subscribe(Mono.java:4491)
at reactor.core.publisher.Mono.block(Mono.java:1741)
at com.azure.core.implementation.http.rest.AsyncRestProxy.handleRestReturnType(AsyncRestProxy.java:266)
at com.azure.core.implementation.http.rest.AsyncRestProxy.invoke(AsyncRestProxy.java:98)
at com.azure.core.implementation.http.rest.RestProxyBase.invoke(RestProxyBase.java:124)
at com.azure.core.http.rest.RestProxy.invoke(RestProxy.java:95)
at jdk.proxy4.$Proxy101.annotationType(Unknown Source)
at root method.(Unknown Source)
Error: Discovered unresolved type during parsing: io.netty.util.internal.logging.Log4J2Logger. This error is reported at image build time because class io.netty.util.internal.logging.Log4J2LoggerFactory is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.util.internal.logging.InternalLoggerFactory.newDefaultFactory(InternalLoggerFactory.java:42)
Parsing context:
at io.netty.util.internal.logging.InternalLoggerFactory.getDefaultFactory(InternalLoggerFactory.java:111)
at io.netty.util.internal.logging.InternalLoggerFactory.getInstance(InternalLoggerFactory.java:134)
at io.netty.buffer.ByteBufUtil.<clinit>(ByteBufUtil.java:61)
at static root method.(Unknown Source)
at org.graalvm.nativeimage.builder/com.oracle.svm.core.util.UserError.abort(UserError.java:85)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.FallbackFeature.reportAsFallback(FallbackFeature.java:248)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:814)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:592)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:550)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:539)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:721)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.start(NativeImageGeneratorRunner.java:143)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:98)
Caused by: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported features in 7 methods
Detailed message:
Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.handler.ssl.ReferenceCountedOpenSslContext.refCnt of constant
io.netty.handler.ssl.OpenSslClientContext@77ae0db: io.netty.handler.ssl.OpenSslClientContext@77ae0db
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@b257e5: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@b257e5: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:39)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x00000007c17799e8.accept(Unknown Source)
9.2s (8.1% of total time) in 476 GCs | Peak RSS: 1.93GB | CPU load: 6.50
at org.jboss.logmanager.formatters.FlagSet.forEach(FlagSet.java:65)
========================================================================================================================
at io.quarkus.arc.impl.ComputingCacheContextInstances.removeEach(ComputingCacheContextInstances.java:40)
Finished generating 'quarkus-azure-sample-1.0.0-SNAPSHOT-runner' in 1m 51s.
at io.quarkus.arc.impl.AbstractSharedContext.destroy(AbstractSharedContext.java:104)
at io.quarkus.arc.impl.ArcContainerImpl.shutdown(ArcContainerImpl.java:455)
at io.quarkus.arc.Arc.shutdown(Arc.java:65)
at io.quarkus.arc.runtime.ArcRecorder$1.run(ArcRecorder.java:53)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.ReferenceCountedOpenSslContext$1' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.handler.ssl.ReferenceCountedOpenSslContext.refCnt of constant
io.netty.handler.ssl.OpenSslClientContext@78d38009: io.netty.handler.ssl.OpenSslClientContext@78d38009
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@3fb76d58: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@3fb76d58: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:36)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x00000007c17799e8.accept(Unknown Source)
at org.jboss.logmanager.formatters.FlagSet.forEach(FlagSet.java:65)
at io.quarkus.arc.impl.ComputingCacheContextInstances.removeEach(ComputingCacheContextInstances.java:40)
at io.quarkus.arc.impl.AbstractSharedContext.destroy(AbstractSharedContext.java:104)
at io.quarkus.arc.impl.ArcContainerImpl.shutdown(ArcContainerImpl.java:455)
at io.quarkus.arc.Arc.shutdown(Arc.java:65)
at io.quarkus.arc.runtime.ArcRecorder$1.run(ArcRecorder.java:53)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.calculateOutNetBufSize(int, int). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.allocateWrapBuffer(SslHandler.java:284)
Parsing context:
at io.netty.handler.ssl.SslHandler.allocateOutNetBuf(SslHandler.java:2368)
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:867)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:822)
at io.netty.handler.ssl.SslHandler.handleUnwrapThrowable(SslHandler.java:1369)
at io.netty.handler.ssl.SslHandler.access$1000(SslHandler.java:171)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.taskError(SslHandler.java:1732)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.resumeOnEventExecutor(SslHandler.java:1843)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.access$2000(SslHandler.java:1711)
at io.netty.handler.ssl.SslHandler$SslTasksRunner$2.run(SslHandler.java:1872)
at sun.nio.ch.IOUtil$LinkedRunnable.run(IOUtil.java:529)
at sun.nio.ch.IOUtil.releaseScopes(IOUtil.java:515)
at sun.nio.ch.IOUtil.write(IOUtil.java:251)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:578)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:430)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:931)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.calculateRequiredOutBufSpace(int, int). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.calculateRequiredOutBufSpace(SslHandler.java:290)
Parsing context:
at io.netty.handler.ssl.SslHandler.wrapMultiple(SslHandler.java:1062)
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:864)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:822)
at io.netty.handler.ssl.SslHandler.handleUnwrapThrowable(SslHandler.java:1369)
at io.netty.handler.ssl.SslHandler.access$1000(SslHandler.java:171)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.taskError(SslHandler.java:1732)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.resumeOnEventExecutor(SslHandler.java:1843)
at io.netty.handler.ssl.SslHandler$SslTasksRunner.access$2000(SslHandler.java:1711)
at io.netty.handler.ssl.SslHandler$SslTasksRunner$2.run(SslHandler.java:1872)
at sun.nio.ch.IOUtil$LinkedRunnable.run(IOUtil.java:529)
at sun.nio.ch.IOUtil.releaseScopes(IOUtil.java:515)
at sun.nio.ch.IOUtil.write(IOUtil.java:251)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:578)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:430)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:931)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved method during parsing: io.netty.handler.ssl.ConscryptAlpnSslEngine.unwrap(java.nio.ByteBuffer[], java.nio.ByteBuffer[]). This error is reported at image build time because class io.netty.handler.ssl.SslHandler$SslEngineType$2 is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.ssl.SslHandler$SslEngineType$2.unwrap(SslHandler.java:258)
Parsing context:
at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1445)
at io.netty.handler.ssl.SslHandler.wrapNonAppData(SslHandler.java:1011)
at io.netty.handler.ssl.SslHandler.handshake(SslHandler.java:2192)
at io.netty.handler.ssl.SslHandler.startHandshakeProcessing(SslHandler.java:2108)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:794)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:2074)
at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:2043)
at io.netty.handler.ssl.SslHandler.close(SslHandler.java:754)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:761)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:733)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:560)
at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:957)
at io.netty.channel.AbstractChannel.close(AbstractChannel.java:244)
at reactor.netty.transport.TransportConnector$MonoChannelPromise.tryFailure(TransportConnector.java:563)
at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetFailure(AbstractChannel.java:999)
at io.netty.channel.AbstractChannel$AbstractUnsafe.doClose0(AbstractChannel.java:759)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:731)
at io.netty.channel.AbstractChannel$AbstractUnsafe.handleWriteError(AbstractChannel.java:950)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:933)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54)
at java.lang.Shutdown.runHooks(Shutdown.java:130)
at java.lang.Shutdown.shutdown(Shutdown.java:200)
at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:274)
at com.oracle.svm.core.JavaMainWrapper.runShutdown(JavaMainWrapper.java:254)
at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:308)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
at static root method.(Unknown Source)
Error: Discovered unresolved type during parsing: com.jcraft.jzlib.Deflater. This error is reported at image build time because class io.netty.handler.codec.compression.JZlibEncoder is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.handler.codec.compression.ZlibCodecFactory.newZlibEncoder(ZlibCodecFactory.java:79)
Parsing context:
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.compressContent(DeflateEncoder.java:119)
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode(DeflateEncoder.java:88)
at io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode(DeflateEncoder.java:41)
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:90)
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116)
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891)
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875)
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984)
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000)
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1025)
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:306)
at reactor.netty.channel.ChannelOperations.lambda$sendUsing$4(ChannelOperations.java:329)
at reactor.netty.channel.ChannelOperations$$Lambda/0x00000007c17bedb0.apply(Unknown Source)
at reactor.core.publisher.MonoUsing.subscribe(MonoUsing.java:85)
at reactor.core.publisher.Mono.subscribe(Mono.java:4491)
at reactor.core.publisher.Mono.block(Mono.java:1741)
at com.azure.core.implementation.http.rest.AsyncRestProxy.handleRestReturnType(AsyncRestProxy.java:266)
at com.azure.core.implementation.http.rest.AsyncRestProxy.invoke(AsyncRestProxy.java:98)
at com.azure.core.implementation.http.rest.RestProxyBase.invoke(RestProxyBase.java:124)
at com.azure.core.http.rest.RestProxy.invoke(RestProxy.java:95)
at jdk.proxy4.$Proxy101.annotationType(Unknown Source)
at root method.(Unknown Source)
Error: Discovered unresolved type during parsing: io.netty.util.internal.logging.Log4J2Logger. This error is reported at image build time because class io.netty.util.internal.logging.Log4J2LoggerFactory is registered for linking at image build time by command line and command line.
Error encountered while parsing io.netty.util.internal.logging.InternalLoggerFactory.newDefaultFactory(InternalLoggerFactory.java:42)
Parsing context:
at io.netty.util.internal.logging.InternalLoggerFactory.getDefaultFactory(InternalLoggerFactory.java:111)
at io.netty.util.internal.logging.InternalLoggerFactory.getInstance(InternalLoggerFactory.java:134)
at io.netty.buffer.ByteBufUtil.<clinit>(ByteBufUtil.java:61)
at static root method.(Unknown Source)
at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.constraints.UnsupportedFeatures.report(UnsupportedFeatures.java:129)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:809)
... 6 more
To Reproduce Here is a reproduce for same
https://github.com/parasjain27031994/quarkus-azure-queue-sample.git
Code Snippet Add the code snippet that causes the issue.
Expected behavior A clear and concise description of what you expected to happen.
Screenshots If applicable, add screenshots to help explain your problem.
Setup (please complete the following information):
- OS: Windows11
- IDE: IntelliJ
- Library/Libraries: com.azure:azure-storage-queue:1.2.25
- Java version: 21.0.4+7-LTS
- App Server/Environment: Quarkus
If you suspect a dependency version mismatch (e.g. you see NoClassDefFoundError, NoSuchMethodError or similar), please check out Troubleshoot dependency version conflict article first. If it doesn't provide solution for the problem, please provide:
- verbose dependency tree (
mvn dependency:tree -Dverbose) - exception message, full stack trace, and any available logs
Additional context Add any other context about the problem here.
Information Checklist Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report
- [ ] Bug Description Added
- [ ] Repro Steps Added
- [ ] Setup information Added
cc @srnagar
@parasjain27031994 This Quarkus extension is doing some GraalVM configurations for Netty: https://docs.quarkiverse.io/quarkus-opentelemetry-exporter/dev/quarkus-opentelemetry-exporter-azure.html
If you add this extension, does it solve your problem?
@srnagar this issue seems to have fallen through the cracks here; could you follow up?
Thanks @joshfree. I will take a look at this issue.
@parasjain27031994 Do you still have this issue? Does using the OpenTelemetry Quarkus extension solve the issue?
I am also running into errors the Azure Blob SDK (building on Windows 11):
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildRunner] C:\Program Files\GraalVM\graalvm-jdk-21.0.4+8.1\bin\native-image.cmd -J-DCoordinatorEnvironmentBean.transactionStatusManagerEnable=false -J-Dsun.nio.ch.maxUpdateArraySize=100 -J-Djava.util.logging.manager=org.jboss.logmanager.LogManager -J-Duser.language=en -J-Duser.country=US -J-Dlogging.initial-configurator.min-level=500 -J-Dvertx.logger-delegate-factory-class-name=io.quarkus.vertx.core.runtime.VertxLogDelegateFactory -J-Dvertx.disableDnsResolver=true -J-Dio.netty.leakDetection.level=DISABLED -J-Dio.netty.allocator.maxOrder=3 -H:+UnlockExperimentalVMOptions -H:IncludeLocales=en-US -H:-UnlockExperimentalVMOptions -J-Dfile.encoding=UTF-8 -J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk=ALL-UNNAMED --features=org.hibernate.graalvm.internal.GraalVMStaticFeature,io.quarkus.jdbc.h2.runtime.H2Reflections,io.quarkus.runner.Feature,io.quarkus.hibernate.orm.runtime.graal.RegisterServicesForReflectionFeature,io.quarkus.runtime.graal.DisableLoggingFeature,io.quarkus.caffeine.runtime.graal.CacheConstructorsFeature,io.quarkus.hibernate.validator.runtime.DisableLoggingFeature,io.quarkus.hibernate.orm.runtime.graal.DisableLoggingFeature,io.quarkus.jdbc.postgresql.runtime.graal.SQLXMLFeature,io.quarkus.runtime.graal.SkipConsoleServiceProvidersFeature -J--add-exports=java.security.jgss/sun.security.krb5=ALL-UNNAMED -J--add-exports=java.security.jgss/sun.security.jgss=ALL-UNNAMED -J--add-opens=java.base/java.text=ALL-UNNAMED -J--add-opens=java.base/java.io=ALL-UNNAMED -J--add-opens=java.base/java.lang.invoke=ALL-UNNAMED -J--add-opens=java.base/java.util=ALL-UNNAMED -H:+UnlockExperimentalVMOptions -H:BuildOutputJSONFile=application-1.0.0-SNAPSHOT-runner-build-output-stats.json -H:-UnlockExperimentalVMOptions -H:+UnlockExperimentalVMOptions -H:+GenerateBuildArtifactsFile -H:-UnlockExperimentalVMOptions --strict-image-heap -H:+UnlockExperimentalVMOptions -H:+AllowFoldMethods -H:-UnlockExperimentalVMOptions -J-Djava.awt.headless=true --no-fallback --link-at-build-time -H:+UnlockExperimentalVMOptions -H:+ReportExceptionStackTraces -H:-UnlockExperimentalVMOptions -H:+AddAllCharsets --enable-url-protocols=http,https -H:+UnlockExperimentalVMOptions -H:-UseServiceLoaderFeature -H:-UnlockExperimentalVMOptions -J--add-exports=org.graalvm.nativeimage/org.graalvm.nativeimage.impl=ALL-UNNAMED --add-modules=jdk.net --exclude-config io\.netty\.netty-codec /META-INF/native-image/io\.netty/netty-codec/generated/handlers/reflect-config\.json --exclude-config io\.netty\.netty-handler /META-INF/native-image/io\.netty/netty-handler/generated/handlers/reflect-config\.json application-1.0.0-SNAPSHOT-runner -jar application-1.0.0-SNAPSHOT-runner.jar
**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.12.3
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
Warning: The option '-H:IncludeResourceBundles=yasson-messages' is experimental and must be enabled via '-H:+UnlockExperimentalVMOptions' in the future.
Warning: Please re-evaluate whether any experimental option is required, and either remove or unlock it. The build output lists all active experimental options, including where they come from and possible alternatives. If you think an experimental option should be considered as stable, please file an issue.
========================================================================================================================
GraalVM Native Image: Generating 'application-1.0.0-SNAPSHOT-runner' (executable)...
========================================================================================================================
For detailed information and explanations on the build output, visit:
https://github.com/oracle/graal/blob/master/docs/reference-manual/native-image/BuildOutput.md
------------------------------------------------------------------------------------------------------------------------
The URL protocol jar is not tested and might not work as expected.
Supported URL protocols enabled by default: file,resource. Supported URL protocols available on demand: http,https.
Warning: Cannot register dynamic proxy for interface list: com.sun.jna.Library. Reason: Class com.sun.jna.Library not found..
Warning: Cannot register dynamic proxy for interface list: com.sun.jna.Callback. Reason: Class com.sun.jna.Callback not found..
[1/8] Initializing... (13.0s @ 0.57GB)
Java version: 21.0.4+8-LTS, vendor version: Oracle GraalVM 21.0.4+8.1
Graal compiler: optimization level: 2, target machine: x86-64-v3, PGO: ML-inferred
C compiler: cl.exe (microsoft, x64, 19.42.34435)
Garbage collector: Serial GC (max heap size: 80% of RAM)
13 user-specific feature(s):
- com.oracle.svm.thirdparty.gson.GsonFeature
- io.quarkus.caffeine.runtime.graal.CacheConstructorsFeature
- io.quarkus.hibernate.orm.runtime.graal.DisableLoggingFeature: Disables INFO logging during the analysis phase
- io.quarkus.hibernate.orm.runtime.graal.RegisterServicesForReflectionFeature: Makes methods of reachable hibernate services accessible through getMethods()`
- io.quarkus.hibernate.validator.runtime.DisableLoggingFeature: Disables INFO logging during the analysis phase for the [org.hibernate.validator.internal.util.Version] categories
- io.quarkus.jdbc.h2.runtime.H2Reflections: Support for H2 Database's extended data types
- io.quarkus.jdbc.postgresql.runtime.graal.SQLXMLFeature
- io.quarkus.runner.Feature: Auto-generated class by Quarkus from the existing extensions
- io.quarkus.runtime.graal.DisableLoggingFeature: Adapts logging during the analysis phase
- io.quarkus.runtime.graal.SkipConsoleServiceProvidersFeature: Skip unsupported console service providers when quarkus.native.auto-service-loader-registration is false
- org.eclipse.angus.activation.nativeimage.AngusActivationFeature
- org.hibernate.graalvm.internal.GraalVMStaticFeature: Hibernate ORM's static reflection registrations for GraalVM
- org.sqlite.nativeimage.SqliteJdbcFeature
------------------------------------------------------------------------------------------------------------------------
5 experimental option(s) unlocked:
- '-H:+AllowFoldMethods' (origin(s): command line)
- '-H:BuildOutputJSONFile' (origin(s): command line)
- '-H:-UseServiceLoaderFeature' (origin(s): command line)
- '-H:IncludeResourceBundles' (origin(s): 'META-INF\native-image\org.eclipse\yasson\native-image.properties' in 'file:///C:/Users/<redacted>/application/target/application-1.0.0-SNAPSHOT-native-image-source-jar/lib/org.eclipse.yasson-3.0.4.jar')
- '-H:+GenerateBuildArtifactsFile' (origin(s): command line)
------------------------------------------------------------------------------------------------------------------------
Build resources:
- 26.49GB of memory (41.6% of 63.66GB system memory, determined at start)
- 28 thread(s) (100.0% of 28 available processor(s), determined at start)
14:24:51,139 INFO [com.azu.cor.htt.net.imp.NettyUtility] {"az.sdk.message":"The following Netty versions were found on the classpath and have a mismatch with the versions used by azure-core-http-netty. If your application runs without issue this message can be ignored, otherwise please align the Netty versions used in your application. For more information, see https://aka.ms/azsdk/java/dependency/troubleshoot.","azure-netty-version":"4.1.115.Final","azure-netty-native-version":"2.0.69.Final","classpath-netty-version-io.netty:netty-common":"4.1.118.Final","classpath-netty-version-io.netty:netty-handler":"4.1.118.Final","classpath-netty-version-io.netty:netty-handler-proxy":"4.1.118.Final","classpath-netty-version-io.netty:netty-buffer":"4.1.118.Final","classpath-netty-version-io.netty:netty-codec":"4.1.118.Final","classpath-netty-version-io.netty:netty-codec-http":"4.1.118.Final","classpath-netty-version-io.netty:netty-codec-http2":"4.1.118.Final","classpath-netty-version-io.netty:netty-transport-native-unix-common":"4.1.118.Final","classpath-netty-version-io.netty:netty-transport-native-epoll":"4.1.118.Final","classpath-netty-version-io.netty:netty-transport-native-kqueue":"4.1.118.Final","classpath-native-netty-version-io.netty:netty-tcnative-boringssl-static":"2.0.70.Final"}
14:24:51,987 INFO [com.azu.cor.imp.jac.JacksonVersion] Package versions: jackson-core=2.18.2, jackson-databind=2.18.2, jackson-dataformat-xml=2.18.2, jackson-datatype-jsr310=2.18.2, azure-core=1.54.1, Troubleshooting version conflicts: https://aka.ms/azsdk/java/dependency/troubleshoot
Warning: RecomputeFieldValue.FieldOffset automatic substitution failed. The automatic substitution registration was attempted because a call to sun.misc.Unsafe.objectFieldOffset(Field) was detected in the static initializer of com.google.protobuf.UnsafeUtil. Detailed failure reason(s): The argument of sun.misc.Unsafe.objectFieldOffset(java.lang.reflect.Field) is not a constant value or a field load that can be constant-folded., Could not determine the field where the value produced by the call to sun.misc.Unsafe.objectFieldOffset(Field) for the field offset computation is stored. The call is not directly followed by a field store or by a sign extend node followed directly by a field store.
[2/8] Performing analysis... [******] (46.6s @ 4.58GB)
34,357 reachable types (91.8% of 37,413 total)
54,618 reachable fields (64.3% of 85,007 total)
194,323 reachable methods (62.0% of 313,477 total)
9,933 types, 2,990 fields, and 14,747 methods registered for reflection
119 types, 83 fields, and 1,465 methods registered for JNI access
5 native libraries: crypt32, ncrypt, psapi, version, winhttp
Error: Unsupported features in 3 methods
Detailed message:
Error: An object of type 'io.netty.buffer.UnpooledByteBufAllocator' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.buffer.UnpooledByteBufAllocator' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.buffer.UnpooledByteBufAllocator'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.buffer.UnpooledByteBufAllocator' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.buffer.UnpooledByteBufAllocator'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.buffer.UnpooledByteBufAllocator' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.buffer.EmptyByteBuf.alloc of constant
io.netty.buffer.EmptyByteBuf@47c3d941: EmptyByteBufBE
scanning root io.netty.buffer.EmptyByteBuf@47c3d941: EmptyByteBufBE embedded in
reactor.netty.ReactorNetty.lambda$static$6(ReactorNetty.java:1045)
parsing method reactor.netty.ReactorNetty.lambda$static$6(ReactorNetty.java:1045) reachable via the parsing context
at static root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.OpenSslClientContext' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.OpenSslClientContext' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.OpenSslClientContext' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.OpenSslClientContext'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@406dc06f: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@406dc06f: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:36)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x000000080383e450.accept(Unknown Source)
at java.util.Spliterator$OfInt$$Lambda/0x00000008035eedf0.accept(Unknown Source)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:679)
at java.lang.reflect.Executable.sharedToString(Executable.java:123)
at java.lang.reflect.Method.toString(Method.java:416)
at root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.OpenSslClientContext' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.OpenSslClientContext' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.OpenSslClientContext' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.OpenSslClientContext'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@221f2e52: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@221f2e52: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:39)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x000000080383e450.accept(Unknown Source)
at java.util.Spliterator$OfInt$$Lambda/0x00000008035eedf0.accept(Unknown Source)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:679)
at java.lang.reflect.Executable.sharedToString(Executable.java:123)
at java.lang.reflect.Method.toString(Method.java:416)
at root method.(Unknown Source)
com.oracle.svm.core.util.UserError$UserException: Unsupported features in 3 methods
Detailed message:
Error: An object of type 'io.netty.buffer.UnpooledByteBufAllocator' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.buffer.UnpooledByteBufAllocator' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.buffer.UnpooledByteBufAllocator'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.buffer.UnpooledByteBufAllocator' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.buffer.UnpooledByteBufAllocator'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.buffer.UnpooledByteBufAllocator' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.buffer.EmptyByteBuf.alloc of constant
io.netty.buffer.EmptyByteBuf@47c3d941: EmptyByteBufBE
scanning root io.netty.buffer.EmptyByteBuf@47c3d941: EmptyByteBufBE embedded in
reactor.netty.ReactorNetty.lambda$static$6(ReactorNetty.java:1045)
parsing method reactor.netty.ReactorNetty.lambda$static$6(ReactorNetty.java:1045) reachable via the parsing context
at static root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.OpenSslClientContext' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.OpenSslClientContext' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.OpenSslClientContext' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.OpenSslClientContext'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@406dc06f: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@406dc06f: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:36)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x000000080383e450.accept(Unknown Source)
at java.util.Spliterator$OfInt$$Lambda/0x00000008035eedf0.accept(Unknown Source)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:679)
at java.lang.reflect.Executable.sharedToString(Executable.java:123)
at java.lang.reflect.Method.toString(Method.java:416)
at root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.OpenSslClientContext' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.OpenSslClientContext' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.OpenSslClientContext' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.OpenSslClientContext'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@221f2e52: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@221f2e52: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:39)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x000000080383e450.accept(Unknown Source)
at java.util.Spliterator$OfInt$$Lambda/0x00000008035eedf0.accept(Unknown Source)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:679)
at java.lang.reflect.Executable.sharedToString(Executable.java:123)
at java.lang.reflect.Method.toString(Method.java:416)
at root method.(Unknown Source)
at org.graalvm.nativeimage.builder/com.oracle.svm.core.util.UserError.abort(UserError.java:85)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.FallbackFeature.reportAsFallback(FallbackFeature.java:248)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:814)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:592)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:550)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:539)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:721)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.start(NativeImageGeneratorRunner.java:143)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:98)
Caused by: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported features in 3 methods
Detailed message:
Error: An object of type 'io.netty.buffer.UnpooledByteBufAllocator' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.buffer.UnpooledByteBufAllocator' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.buffer.UnpooledByteBufAllocator'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.buffer.UnpooledByteBufAllocator' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.buffer.UnpooledByteBufAllocator'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.buffer.UnpooledByteBufAllocator' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field io.netty.buffer.EmptyByteBuf.alloc of constant
io.netty.buffer.EmptyByteBuf@47c3d941: EmptyByteBufBE
scanning root io.netty.buffer.EmptyByteBuf@47c3d941: EmptyByteBufBE embedded in
reactor.netty.ReactorNetty.lambda$static$6(ReactorNetty.java:1045)
parsing method reactor.netty.ReactorNetty.lambda$static$6(ReactorNetty.java:1045) reachable via the parsing context
at static root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.OpenSslClientContext' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.OpenSslClientContext' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.OpenSslClientContext' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.OpenSslClientContext'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@406dc06f: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@406dc06f: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:36)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x000000080383e450.accept(Unknown Source)
at java.util.Spliterator$OfInt$$Lambda/0x00000008035eedf0.accept(Unknown Source)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:679)
at java.lang.reflect.Executable.sharedToString(Executable.java:123)
at java.lang.reflect.Method.toString(Method.java:416)
at root method.(Unknown Source)
Error: An object of type 'io.netty.handler.ssl.OpenSslClientContext' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.
You now have two options to resolve this:
1) If it is intended that objects of type 'io.netty.handler.ssl.OpenSslClientContext' are persisted in the image heap, add
'--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext'
to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.OpenSslClientContext' to see if they are safe for build-time initialization, and that they do not contain any sensitive data that should not become part of the image.
2) If these objects should not be stored in the image heap, you can use
'--trace-object-instantiation=io.netty.handler.ssl.OpenSslClientContext'
to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with
'--initialize-at-run-time=<culprit>'
to prevent the instantiation of the object.
If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.OpenSslClientContext' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.
The following detailed trace displays from which field in the code the object was reached.
Trace: Object was reached by
reading field reactor.netty.tcp.SslProvider.sslContext of constant
reactor.netty.tcp.SslProvider@221f2e52: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil...
scanning root reactor.netty.tcp.SslProvider@221f2e52: SslProvider {type=NONE, handshakeTimeoutMillis=10000, closeNotifyFlushTimeoutMil... embedded in
reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:39)
parsing method reactor.netty.http.client.HttpClientSecure.defaultSslProvider(HttpClientSecure.java:35) reachable via the parsing context
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:217)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$$Lambda/0x000000080383e450.accept(Unknown Source)
at java.util.Spliterator$OfInt$$Lambda/0x00000008035eedf0.accept(Unknown Source)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:679)
at java.lang.reflect.Executable.sharedToString(Executable.java:123)
at java.lang.reflect.Method.toString(Method.java:416)
at root method.(Unknown Source)
at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.constraints.UnsupportedFeatures.report(UnsupportedFeatures.java:129)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:809)
... 6 more
------------------------------------------------------------------------------------------------------------------------
6.4s (10.5% of total time) in 53 GCs | Peak RSS: 9.15GB | CPU load: 10.87
========================================================================================================================
Any hints about how to resolve this issue?, it still persists with this library com.azure:azure-data-tables:12.5.3
I used the code sample provided by @parasjain27031994 to repro this issue - https://github.com/parasjain27031994/quarkus-azure-queue-sample.git
Adding the quarkus-netty extension and including the following in src/main/resources/META-INF/native-image/<maven-group-id>/<artifact-id>/native-images.properties file should fix the above errors.
Args=\
--initialize-at-run-time=com.azure.core.util.serializer.JacksonAdapter$GlobalXmlMapper,\
com.azure.core.http.netty.NettyAsyncHttpClientProvider$GlobalNettyHttpClient,\
com.azure.core.implementation.jackson.XmlMapperFactory,\
io.netty.handler.ssl.ReferenceCountedOpenSslContext$1,\
io.netty.buffer.UnpooledByteBufAllocator,\
reactor.netty.http.client.HttpClientSecure,\
reactor.netty.tcp.TcpClientSecure,\
reactor.netty.ReactorNetty
We will also update native-images.properties in azure-core-http-netty library to include the above configuration in our next release but this can be used as workaround in your application until the next version of library is released.
Please let us know if this issue still persists after making the above changes.
Hi @parasjain27031994. Thank you for opening this issue and giving us the opportunity to assist. We believe that this has been addressed. If you feel that further discussion is needed, please add a comment with the text "/unresolve" to remove the "issue-addressed" label and continue the conversation.
Hi @parasjain27031994, since you haven’t asked that we /unresolve the issue, we’ll close this out. If you believe further discussion is needed, please add a comment /unresolve to reopen the issue.