ppalaga opened a new issue, #4134:
URL: https://github.com/apache/camel-quarkus/issues/4134

   Is perhaps triggered by a combination of log component and aws-S3.
   
   Steps to reproduce:
   
   ```
   git clone [email protected]:ppalaga/camel-quarkus-demo.git 
   cd camel-quarkus-demo
   git checkout 220926-securerandom-aws
   
   mvn clean package -Pnative -Dquarkus.native.container-build=true
   ...
   [INFO] [io.quarkus.deployment.pkg.steps.JarResultBuildStep] Building native 
image source jar: 
/home/ppalaga/orgs/demos/220927-camel/camel-quarkus-demo/target/code-with-quarkus-1.0.0-SNAPSHOT-native-image-source-jar/code-with-quarkus-1.0.0-SNAPSHOT-runner.jar
   [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Building 
native image from 
/home/ppalaga/orgs/demos/220927-camel/camel-quarkus-demo/target/code-with-quarkus-1.0.0-SNAPSHOT-native-image-source-jar/code-with-quarkus-1.0.0-SNAPSHOT-runner.jar
   [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildContainerRunner] 
Using docker to run the native image builder
   [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildContainerRunner] 
Checking image status quay.io/quarkus/ubi-quarkus-native-image:22.2-java17
   22.2-java17: Pulling from quarkus/ubi-quarkus-native-image
   Digest: 
sha256:ee128914b55187c256de677fe862c7c4335be2a48093606b3aa10ef07235f876
   Status: Image is up to date for 
quay.io/quarkus/ubi-quarkus-native-image:22.2-java17
   quay.io/quarkus/ubi-quarkus-native-image:22.2-java17
   [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running 
Quarkus native-image plugin on GraalVM 22.2.0 Java 17 CE (Java Version 
17.0.4+8-jvmci-22.2-b06)
   [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildRunner] docker run 
--env LANG=C --rm --user 1000:1000 -v 
/home/ppalaga/orgs/demos/220927-camel/camel-quarkus-demo/target/code-with-quarkus-1.0.0-SNAPSHOT-native-image-source-jar:/project:z
 --name build-native-QGBJp quay.io/quarkus/ubi-quarkus-native-image:22.2-java17 
-J-Djava.util.logging.manager=org.jboss.logmanager.LogManager 
-J-Duser.language=en -J-Duser.country=IE -J-Dfile.encoding=UTF-8 
--features=io.quarkus.runner.Feature,io.quarkus.runtime.graal.ResourcesFeature,io.quarkus.caffeine.runtime.graal.CacheConstructorsFeature,io.quarkus.runtime.graal.DisableLoggingFeature
 -J--add-exports=java.security.jgss/sun.security.krb5=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:InitialCollectionPolicy=com.oracle.svm.core.genscavenge.CollectionPolicy\$BySpaceAndTime
 -H:+AllowFold
 Methods -J-Djava.awt.headless=true -H:FallbackThreshold=0 --link-at-build-time 
-H:+ReportExceptionStackTraces -H:-AddAllCharsets 
-H:EnableURLProtocols=http,https -H:-UseServiceLoaderFeature -H:+StackTrace 
-H:AdditionalSecurityProviders=com.sun.security.sasl.Provider,org.apache.kafka.common.security.oauthbearer.internals.OAuthBearerSaslClientProvider,org.apache.kafka.common.security.scram.internals.ScramSaslClientProvider
 -J--add-exports=org.graalvm.sdk/org.graalvm.nativeimage.impl=ALL-UNNAMED 
-J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk=ALL-UNNAMED
 
-J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk.proxy=ALL-UNNAMED
 
-J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk.localization=ALL-UNNAMED
 -J--add-exports=org.graalvm.nativeimage.base/com.oracle.svm.util=ALL-UNNAMED 
code-with-quarkus-1.0.0-SNAPSHOT-runner -jar 
code-with-quarkus-1.0.0-SNAPSHOT-runner.jar
   WARNING: Unknown module: org.graalvm.nativeimage.llvm specified to 
--add-exports
   WARNING: Unknown module: org.graalvm.nativeimage.llvm specified to 
--add-exports
   WARNING: Unknown module: org.graalvm.nativeimage.llvm specified to 
--add-exports
   
========================================================================================================================
   GraalVM Native Image: Generating 'code-with-quarkus-1.0.0-SNAPSHOT-runner' 
(executable)...
   
========================================================================================================================
   [1/7] Initializing...                                                        
                            (8.8s @ 0.30GB)
    Version info: 'GraalVM 22.2.0 Java 17 CE'
    Java version info: '17.0.4+8-jvmci-22.2-b06'
    C compiler: gcc (redhat, x86_64, 8.5.0)
    Garbage collector: Serial GC
    5 user-specific feature(s)
    - io.quarkus.caffeine.runtime.graal.CacheConstructorsFeature
    - io.quarkus.runner.Feature: Auto-generated class by Quarkus from the 
existing extensions
    - io.quarkus.runtime.graal.DisableLoggingFeature: Disables INFO logging 
during the analysis phase for the [org.jboss.threads] categories
    - io.quarkus.runtime.graal.ResourcesFeature: Register each line in 
META-INF/quarkus-native-resources.txt as a resource on Substrate VM
    - org.graalvm.home.HomeFinderFeature: Finds GraalVM paths and its version 
number
   [2/7] Performing analysis...  []                                             
                            (6.9s @ 1.10GB)
      7,963 (90.04%) of  8,844 classes reachable
     10,450 (60.15%) of 17,374 fields reachable
     31,445 (77.72%) of 40,457 methods reachable
        610 classes,     0 fields, and     0 methods registered for reflection
   
   Fatal error: com.oracle.graal.pointsto.util.AnalysisError$ParsingError: 
Error encountered while parsing 
software.amazon.awssdk.utils.cache.CachedSupplier.lambda$jitteredPrefetchValueSupplier$3(java.util.function.Supplier,
 boolean) 
   Parsing context:
      at 
software.amazon.awssdk.utils.cache.CachedSupplier.lambda$jitteredPrefetchValueSupplier$3(CachedSupplier.java:283)
      at 
software.amazon.awssdk.utils.cache.CachedSupplier$$Lambda$2254/0x00000007c1cf3468.get(Unknown
 Source)
      at 
org.apache.camel.support.SupplierRegistry.lookupByNameAndType(SupplierRegistry.java:48)
      at 
org.apache.camel.support.SimpleRegistry.lookupByName(SimpleRegistry.java:41)
      at 
org.apache.camel.support.DefaultRegistry.lookupByName(DefaultRegistry.java:228)
      at 
org.apache.camel.impl.engine.AbstractCamelContext.createEndpoint(AbstractCamelContext.java:3931)
      at 
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:963)
      at 
org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:867)
      at 
org.apache.camel.impl.engine.DefaultProducerTemplate.doInit(DefaultProducerTemplate.java:842)
      at org.apache.camel.support.service.BaseService.init(BaseService.java:83)
      at 
org.apache.camel.support.service.BaseService.start(BaseService.java:111)
      at 
org.apache.camel.support.service.ServiceHelper.startService(ServiceHelper.java:113)
      at 
org.apache.camel.impl.engine.AbstractCamelContext.startService(AbstractCamelContext.java:3667)
      at 
org.apache.camel.impl.engine.AbstractCamelContext.createProducerTemplate(AbstractCamelContext.java:2340)
      at 
org.apache.camel.impl.engine.AbstractCamelContext.createProducerTemplate(AbstractCamelContext.java:2331)
      at 
org.apache.camel.quarkus.core.CamelProducers.camelProducerTemplate(CamelProducers.java:69)
      at 
org.apache.camel.quarkus.core.CamelProducers_ProducerMethod_camelProducerTemplate_2506fbbfe7081a6b0216cae51c2d4a51ee015d23_Bean.create(Unknown
 Source)
      at 
org.apache.camel.quarkus.core.CamelProducers_ProducerMethod_camelProducerTemplate_2506fbbfe7081a6b0216cae51c2d4a51ee015d23_Bean.get(Unknown
 Source)
      at 
org.apache.camel.quarkus.core.CamelProducers_ProducerMethod_camelProducerTemplate_2506fbbfe7081a6b0216cae51c2d4a51ee015d23_Bean.get(Unknown
 Source)
      at 
io.quarkus.arc.impl.ArcContainerImpl.beanInstanceHandle(ArcContainerImpl.java:468)
      at 
io.quarkus.arc.impl.ArcContainerImpl.beanInstanceHandle(ArcContainerImpl.java:481)
      at 
io.quarkus.arc.impl.BeanManagerImpl.getReference(BeanManagerImpl.java:59)
      at 
io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:127)
      at io.quarkus.runtime.Quarkus.run(Quarkus.java:69)
      at io.quarkus.runtime.Quarkus.run(Quarkus.java:42)
   
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.AnalysisError.parsingError(AnalysisError.java:152)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:104)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.ensureFlowsGraphCreated(MethodTypeFlow.java:83)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.getOrCreateMethodFlowsGraph(MethodTypeFlow.java:65)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.typestate.DefaultSpecialInvokeTypeFlow.onObservedUpdate(DefaultSpecialInvokeTypeFlow.java:61)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.TypeFlow.update(TypeFlow.java:558)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis$1.run(PointsToAnalysis.java:635)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.executeCommand(CompletionExecutor.java:193)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.lambda$executeService$0(CompletionExecutor.java:177)
           at 
java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1395)
           at 
java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
           at 
java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
           at 
java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
           at 
java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
           at 
java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
   Caused by: org.graalvm.compiler.java.BytecodeParser$BytecodeParserError: 
com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Detected an 
instance of Random/SplittableRandom class in the image heap. Instances created 
during image generation have cached seed values and don't behave as expected.  
To see how this object got instantiated use 
--trace-object-instantiation=java.util.Random. The object was probably created 
by a class initializer and is reachable from a static field. You can request 
class initialization at image runtime by using the option 
--initialize-at-run-time=<class-name>. Or you can write your own initialization 
methods and call them explicitly from your main entry point.
           at parsing 
software.amazon.awssdk.utils.cache.CachedSupplier.jitterTime(CachedSupplier.java:326)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.throwParserError(BytecodeParser.java:2506)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.throwParserError(SharedGraphBuilderPhase.java:105)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.iterateBytecodesForBlock(BytecodeParser.java:3367)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.handleBytecodeBlock(BytecodeParser.java:3319)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.processBlock(BytecodeParser.java:3164)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.build(BytecodeParser.java:1138)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.buildRootMethod(BytecodeParser.java:1030)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.GraphBuilderPhase$Instance.run(GraphBuilderPhase.java:84)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase.run(SharedGraphBuilderPhase.java:79)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.run(Phase.java:49)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:261)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.apply(Phase.java:42)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.apply(Phase.java:38)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.parseBytecode(AnalysisParsedGraph.java:135)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:685)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.phases.InlineBeforeAnalysisGraphDecoder.lookupEncodedGraph(InlineBeforeAnalysis.java:180)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.doInline(PEGraphDecoder.java:1162)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.tryInline(PEGraphDecoder.java:1145)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.trySimplifyInvoke(PEGraphDecoder.java:1003)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.handleInvoke(PEGraphDecoder.java:957)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.nodes.GraphDecoder.processNextNode(GraphDecoder.java:817)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.phases.InlineBeforeAnalysisGraphDecoder.processNextNode(InlineBeforeAnalysis.java:240)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.nodes.GraphDecoder.decode(GraphDecoder.java:548)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.decode(PEGraphDecoder.java:833)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.phases.InlineBeforeAnalysis.decodeGraph(InlineBeforeAnalysis.java:98)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:176)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:343)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:93)
           ... 13 more
   Caused by: 
com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Detected an 
instance of Random/SplittableRandom class in the image heap. Instances created 
during image generation have cached seed values and don't behave as expected.  
To see how this object got instantiated use 
--trace-object-instantiation=java.util.Random. The object was probably created 
by a class initializer and is reachable from a static field. You can request 
class initialization at image runtime by using the option 
--initialize-at-run-time=<class-name>. Or you can write your own initialization 
methods and call them explicitly from your main entry point.
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.image.DisallowedImageHeapObjectFeature.error(DisallowedImageHeapObjectFeature.java:173)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.core.image.DisallowedImageHeapObjects.check(DisallowedImageHeapObjects.java:62)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.image.DisallowedImageHeapObjectFeature.replacer(DisallowedImageHeapObjectFeature.java:149)
           at 
org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisUniverse.replaceObject(AnalysisUniverse.java:583)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.ameta.AnalysisConstantReflectionProvider.replaceObject(AnalysisConstantReflectionProvider.java:257)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.ameta.AnalysisConstantReflectionProvider.interceptValue(AnalysisConstantReflectionProvider.java:228)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.ameta.AnalysisConstantReflectionProvider.readValue(AnalysisConstantReflectionProvider.java:105)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.ameta.AnalysisConstantReflectionProvider.readFieldValue(AnalysisConstantReflectionProvider.java:84)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.nodes.util.ConstantFoldUtil$1.readValue(ConstantFoldUtil.java:55)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.core.common.spi.JavaConstantFieldProvider.readConstantField(JavaConstantFieldProvider.java:78)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.ameta.AnalysisConstantFieldProvider.readConstantField(AnalysisConstantFieldProvider.java:72)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.nodes.util.ConstantFoldUtil.tryConstantFold(ConstantFoldUtil.java:51)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.ConstantFoldLoadFieldPlugin.tryConstantFold(ConstantFoldLoadFieldPlugin.java:61)
           at 
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.ConstantFoldLoadFieldPlugin.handleLoadStaticField(ConstantFoldLoadFieldPlugin.java:57)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.genGetStatic(BytecodeParser.java:4753)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.genGetStatic(BytecodeParser.java:4724)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.processBytecode(BytecodeParser.java:5218)
           at 
jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.iterateBytecodesForBlock(BytecodeParser.java:3359)
           ... 38 more
   
------------------------------------------------------------------------------------------------------------------------
                           0.6s (3.8% of total time) in 20 GCs | Peak RSS: 
3.06GB | CPU load: 10.08
   
========================================================================================================================
   Failed generating 'code-with-quarkus-1.0.0-SNAPSHOT-runner' after 16.1s.
   Error: Image build request failed with exit status 1
   [INFO] ---------------------------------------------------
   ```
   
   This has been previously reported for 
   
   * AWS SDK https://github.com/aws/aws-sdk-java-v2/issues/3323
   * Quarkus: 
https://github.com/quarkusio/quarkus/issues/14904#issuecomment-1194054878
   
   We need to do the same as Quarkiverse AWS: 
https://github.com/quarkiverse/quarkus-amazon-services/pull/220/files
   
   ... and now that we see that Quarkiverse AWS is maintained, we should 
perhaps revisit the discussion about our relationship to Quarkiverse AWS: 
https://github.com/apache/camel-quarkus/issues/3344


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to