Open askalee90 opened 4 years ago
It seems like you are trying to make Mongo Spark (https://github.com/mongodb/mongo-spark) work in native. There is no supporting extension for that, so it's no surprise that it doesn't work in native mode.
Furthermore, the Quarkus version you are using is very old. I would urge you to try again with Quarkus 1.6.0.Final
and GraalVM 20.1.0
.
@geoand @askalee90 should we close this issue or change it from bug to enhancement and change the description?
Let's make it a enhancement :)
Can change to enhancement?
On Mon, 27 Jul 2020, 11:38 pm Michał Szynkiewicz, notifications@github.com wrote:
@geoand https://github.com/geoand @askalee90 https://github.com/askalee90 should we close this issue or change it from bug to enhancement and change the description?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/quarkusio/quarkus/issues/10802#issuecomment-664470762, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACRDQJ5ZYDQCZQKY7B7Y3OLR5WNNXANCNFSM4O534AVQ .
@askalee90 I didn't saw your pom.xml but did you use our quarkus-mongodb-client
extension ?
It provides substitution for GraalVM so you must include it for MongoDB client to works.
We also include the mongodb-crypt library because it's needed for native image, I was that you have issue with com.mongodb.client.internal.Crypt
this class is provided by the mongodb-crypt that we include with our extension.
@askalee90 did you try with a more recent Quarkus version and with the quarkus-mongodb-client
as suggested ? It may fix the issue without the need for an extension.
Description Currently when one tries to build a native-image using mongo-spark, one gets the following error:
mvn -f /usr/src/app/pom.xml -s /usr/src/app/settings.xml -Pnative package Added --initialize-at-run-time=com.mongodb.client.internal.Crypt and still failed.
Error: Unsupported features in 12 methods Detailed message: Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.ThreadPoolExecutor$Worker
object java.util.HashMap$Node
object java.util.HashMap$Node[]
object java.util.HashMap
object java.util.HashSet
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.locks.AbstractQueuedSynchronizer$Node
object java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject
object java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: No instances of java.net.Inet4Address are allowed in the image heap as this class should be initialized at image runtime. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked.
Trace: object org.apache.spark.util.Utils$
method org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Tuple2)
Call path from entry point to org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Tuple2):
at org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Dataset.scala:313)
at org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Dataset.scala:313)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: No instances of sun.security.provider.NativePRNG are allowed in the image heap as this class should be initialized at image runtime. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked.
Trace: object java.security.SecureRandom
object sun.security.ssl.SSLContextImpl$DefaultSSLContext
object sun.security.ssl.SSLSocketFactoryImpl
method com.mongodb.MongoClientOptions.getSocketFactory()
Call path from entry point to com.mongodb.MongoClientOptions.getSocketFactory():
at com.mongodb.MongoClientOptions.getSocketFactory(MongoClientOptions.java:718)
at com.mongodb.Mongo.createCluster(Mongo.java:757)
at com.mongodb.Mongo.createCluster(Mongo.java:728)
at com.mongodb.Mongo.(Mongo.java:313)
at com.mongodb.MongoClient.(MongoClient.java:342)
at com.mongodb.spark.connection.DefaultMongoClientFactory.create(DefaultMongoClientFactory.scala:49)
at com.mongodb.spark.connection.MongoClientCache.acquire(MongoClientCache.scala:55)
at com.mongodb.spark.MongoConnector.acquireClient(MongoConnector.scala:242)
at com.mongodb.spark.MongoConnector.withMongoClientDo(MongoConnector.scala:155)
at com.mongodb.spark.MongoConnector.withDatabaseDo(MongoConnector.scala:174)
at com.oracle.svm.reflect.MongoConnector_withDatabaseDo_5de8b2c3dd005217a8b2f13c62827cc77c08c2ed_323.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:566)
at java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)
at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:188)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:141)
at com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:342)
at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: com.mongodb.client.internal.Crypt.close(). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.MongoClientDelegate.close(MongoClientDelegate.java:130)
Call path from entry point to com.mongodb.client.internal.MongoClientDelegate.close():
at com.mongodb.client.internal.MongoClientDelegate.close(MongoClientDelegate.java:129)
at com.mongodb.client.internal.MongoClientImpl.close(MongoClientImpl.java:134)
at io.quarkus.mongodb.runtime.MongoClientRecorder.close(MongoClientRecorder.java:74)
at io.quarkus.mongodb.runtime.MongoClientRecorder$$Lambda$639/0x000000084645a840.run(Unknown Source)
at com.oracle.svm.core.jdk.RuntimeSupport.executeHooks(RuntimeSupport.java:144)
at com.oracle.svm.core.jdk.RuntimeSupport.executeStartupHooks(RuntimeSupport.java:89)
at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:143)
at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:186)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: com.mongodb.client.internal.Crypt.encrypt(java.lang.String, org.bson.RawBsonDocument). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:113)
Call path from entry point to com.mongodb.client.internal.CryptConnection.command(String, BsonDocument, FieldNameValidator, ReadPreference, Decoder, SessionContext, boolean, SplittablePayload, FieldNameValidator):
at com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:100)
at com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:129)
at com.mongodb.operation.QueryBatchCursor.getMore(QueryBatchCursor.java:260)
at com.mongodb.operation.QueryBatchCursor.hasNext(QueryBatchCursor.java:138)
at scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:42)
at scala.collection.convert.Wrappers$MapWrapper$$anon$1$$anon$5.hasNext(Wrappers.scala:187)
at com.mongodb.connection.TlsChannelStreamFactoryFactory$SelectorMonitor$1.run(TlsChannelStreamFactoryFactory.java:142)
at java.lang.Thread.run(Thread.java:834)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: sun.nio.ch.DirectBuffer.cleaner(). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(StorageUtils.scala:212)
Call path from entry point to org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(DirectBuffer):
at org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(StorageUtils.scala:212)
at org.apache.spark.storage.StorageUtils$.dispose(StorageUtils.scala:207)
at org.apache.spark.util.io.ChunkedByteBuffer$$anonfun$dispose$1.apply(ChunkedByteBuffer.scala:166)
at org.apache.spark.util.io.ChunkedByteBuffer$$anonfun$dispose$1.apply(ChunkedByteBuffer.scala:166)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: com.mongodb.crypt.capi.MongoCrypts. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.Crypts.createCrypt(Crypts.java:35)
Call path from entry point to com.mongodb.client.internal.Crypts.createCrypt(SimpleMongoClient, AutoEncryptionSettings):
at com.mongodb.client.internal.Crypts.createCrypt(Crypts.java:35)
at com.mongodb.client.internal.MongoClientImpl.(MongoClientImpl.java:70)
at com.mongodb.client.internal.MongoClientImpl.(MongoClientImpl.java:61)
at com.mongodb.client.MongoClients.create(MongoClients.java:114)
at com.mongodb.client.MongoClients.create(MongoClients.java:50)
at io.quarkus.mongodb.runtime.MongoClientRecorder.initialize(MongoClientRecorder.java:177)
at io.quarkus.mongodb.runtime.MongoClientRecorder.configureTheClient(MongoClientRecorder.java:57)
at io.quarkus.deployment.steps.MongoClientProcessor$build24.deploy_0(MongoClientProcessor$build24.zig:101)
at io.quarkus.deployment.steps.MongoClientProcessor$build24.deploy(MongoClientProcessor$build24.zig:136)
at io.quarkus.runner.ApplicationImpl.doStart(ApplicationImpl.zig:242)
at io.quarkus.runtime.Application.start(Application.java:87)
at io.quarkus.runtime.Application.run(Application.java:210)
at io.quarkus.runner.GeneratedMain.main(GeneratedMain.zig:41)
at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:151)
at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:186)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: sun.misc.Cleaner. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
at parsing org.apache.spark.unsafe.Platform.allocateDirectBuffer(Platform.java:172)
Call path from entry point to org.apache.spark.unsafe.Platform.allocateDirectBuffer(int):
at org.apache.spark.unsafe.Platform.allocateDirectBuffer(Platform.java:165)
at org.apache.spark.storage.memory.SerializedValuesHolder$$anonfun$7.apply(MemoryStore.scala:695)
at org.apache.spark.storage.memory.SerializedValuesHolder$$anonfun$7.apply(MemoryStore.scala:695)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.defineClass(String, byte[], int, int, ProtectionDomain) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(AccessClassLoader.java:103)
Call path from entry point to com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(String, byte[]):
at com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(AccessClassLoader.java:98)
at com.esotericsoftware.reflectasm.ConstructorAccess.get(ConstructorAccess.java:103)
at com.twitter.chill.Instantiators$.reflectAsm(KryoBase.scala:137)
at com.oracle.svm.reflect.Instantiators$_reflectAsm_bae823bffce129be3a71483cc259f72f0c347f50_416.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:566)
at java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)
at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:188)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:141)
at com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:342)
at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)
Error: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.getClassLoader(Class) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing java.lang.Package.getPackage(Package.java:353)
Call path from entry point to java.lang.Package.getPackage(String):
at java.lang.Package.getPackage(Package.java:353)
at scala.reflect.runtime.JavaMirrors$JavaMirror.packageNameToScala(JavaMirrors.scala:931)
at scala.reflect.runtime.JavaMirrors$JavaMirror$$anonfun$scala$reflect$runtime$JavaMirrors$$makeScalaPackage$1.apply(JavaMirrors.scala:943)
at scala.reflect.runtime.JavaMirrors$JavaMirror$$anonfun$scala$reflect$runtime$JavaMirrors$$makeScalaPackage$1.apply(JavaMirrors.scala:940)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
com.oracle.svm.core.util.UserError$UserException: Unsupported features in 12 methods Detailed message: Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.ThreadPoolExecutor$Worker
object java.util.HashMap$Node
object java.util.HashMap$Node[]
object java.util.HashMap
object java.util.HashSet
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.locks.AbstractQueuedSynchronizer$Node
object java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject
object java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: No instances of java.net.Inet4Address are allowed in the image heap as this class should be initialized at image runtime. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked.
Trace: object org.apache.spark.util.Utils$
method org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Tuple2)
Call path from entry point to org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Tuple2):
at org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Dataset.scala:313)
at org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Dataset.scala:313)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: No instances of sun.security.provider.NativePRNG are allowed in the image heap as this class should be initialized at image runtime. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked.
Trace: object java.security.SecureRandom
object sun.security.ssl.SSLContextImpl$DefaultSSLContext
object sun.security.ssl.SSLSocketFactoryImpl
method com.mongodb.MongoClientOptions.getSocketFactory()
Call path from entry point to com.mongodb.MongoClientOptions.getSocketFactory():
at com.mongodb.MongoClientOptions.getSocketFactory(MongoClientOptions.java:718)
at com.mongodb.Mongo.createCluster(Mongo.java:757)
at com.mongodb.Mongo.createCluster(Mongo.java:728)
at com.mongodb.Mongo.(Mongo.java:313)
at com.mongodb.MongoClient.(MongoClient.java:342)
at com.mongodb.spark.connection.DefaultMongoClientFactory.create(DefaultMongoClientFactory.scala:49)
at com.mongodb.spark.connection.MongoClientCache.acquire(MongoClientCache.scala:55)
at com.mongodb.spark.MongoConnector.acquireClient(MongoConnector.scala:242)
at com.mongodb.spark.MongoConnector.withMongoClientDo(MongoConnector.scala:155)
at com.mongodb.spark.MongoConnector.withDatabaseDo(MongoConnector.scala:174)
at com.oracle.svm.reflect.MongoConnector_withDatabaseDo_5de8b2c3dd005217a8b2f13c62827cc77c08c2ed_323.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:566)
at java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)
at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:188)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:141)
at com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:342)
at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: com.mongodb.client.internal.Crypt.close(). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.MongoClientDelegate.close(MongoClientDelegate.java:130)
Call path from entry point to com.mongodb.client.internal.MongoClientDelegate.close():
at com.mongodb.client.internal.MongoClientDelegate.close(MongoClientDelegate.java:129)
at com.mongodb.client.internal.MongoClientImpl.close(MongoClientImpl.java:134)
at io.quarkus.mongodb.runtime.MongoClientRecorder.close(MongoClientRecorder.java:74)
at io.quarkus.mongodb.runtime.MongoClientRecorder$$Lambda$639/0x000000084645a840.run(Unknown Source)
at com.oracle.svm.core.jdk.RuntimeSupport.executeHooks(RuntimeSupport.java:144)
at com.oracle.svm.core.jdk.RuntimeSupport.executeStartupHooks(RuntimeSupport.java:89)
at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:143)
at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:186)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: com.mongodb.client.internal.Crypt.encrypt(java.lang.String, org.bson.RawBsonDocument). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:113)
Call path from entry point to com.mongodb.client.internal.CryptConnection.command(String, BsonDocument, FieldNameValidator, ReadPreference, Decoder, SessionContext, boolean, SplittablePayload, FieldNameValidator):
at com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:100)
at com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:129)
at com.mongodb.operation.QueryBatchCursor.getMore(QueryBatchCursor.java:260)
at com.mongodb.operation.QueryBatchCursor.hasNext(QueryBatchCursor.java:138)
at scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:42)
at scala.collection.convert.Wrappers$MapWrapper$$anon$1$$anon$5.hasNext(Wrappers.scala:187)
at com.mongodb.connection.TlsChannelStreamFactoryFactory$SelectorMonitor$1.run(TlsChannelStreamFactoryFactory.java:142)
at java.lang.Thread.run(Thread.java:834)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: sun.nio.ch.DirectBuffer.cleaner(). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(StorageUtils.scala:212)
Call path from entry point to org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(DirectBuffer):
at org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(StorageUtils.scala:212)
at org.apache.spark.storage.StorageUtils$.dispose(StorageUtils.scala:207)
at org.apache.spark.util.io.ChunkedByteBuffer$$anonfun$dispose$1.apply(ChunkedByteBuffer.scala:166)
at org.apache.spark.util.io.ChunkedByteBuffer$$anonfun$dispose$1.apply(ChunkedByteBuffer.scala:166)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: com.mongodb.crypt.capi.MongoCrypts. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.Crypts.createCrypt(Crypts.java:35)
Call path from entry point to com.mongodb.client.internal.Crypts.createCrypt(SimpleMongoClient, AutoEncryptionSettings):
at com.mongodb.client.internal.Crypts.createCrypt(Crypts.java:35)
at com.mongodb.client.internal.MongoClientImpl.(MongoClientImpl.java:70)
at com.mongodb.client.internal.MongoClientImpl.(MongoClientImpl.java:61)
at com.mongodb.client.MongoClients.create(MongoClients.java:114)
at com.mongodb.client.MongoClients.create(MongoClients.java:50)
at io.quarkus.mongodb.runtime.MongoClientRecorder.initialize(MongoClientRecorder.java:177)
at io.quarkus.mongodb.runtime.MongoClientRecorder.configureTheClient(MongoClientRecorder.java:57)
at io.quarkus.deployment.steps.MongoClientProcessor$build24.deploy_0(MongoClientProcessor$build24.zig:101)
at io.quarkus.deployment.steps.MongoClientProcessor$build24.deploy(MongoClientProcessor$build24.zig:136)
at io.quarkus.runner.ApplicationImpl.doStart(ApplicationImpl.zig:242)
at io.quarkus.runtime.Application.start(Application.java:87)
at io.quarkus.runtime.Application.run(Application.java:210)
at io.quarkus.runner.GeneratedMain.main(GeneratedMain.zig:41)
at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:151)
at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:186)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: sun.misc.Cleaner. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
at parsing org.apache.spark.unsafe.Platform.allocateDirectBuffer(Platform.java:172)
Call path from entry point to org.apache.spark.unsafe.Platform.allocateDirectBuffer(int):
at org.apache.spark.unsafe.Platform.allocateDirectBuffer(Platform.java:165)
at org.apache.spark.storage.memory.SerializedValuesHolder$$anonfun$7.apply(MemoryStore.scala:695)
at org.apache.spark.storage.memory.SerializedValuesHolder$$anonfun$7.apply(MemoryStore.scala:695)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.defineClass(String, byte[], int, int, ProtectionDomain) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(AccessClassLoader.java:103)
Call path from entry point to com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(String, byte[]):
at com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(AccessClassLoader.java:98)
at com.esotericsoftware.reflectasm.ConstructorAccess.get(ConstructorAccess.java:103)
at com.twitter.chill.Instantiators$.reflectAsm(KryoBase.scala:137)
at com.oracle.svm.reflect.Instantiators$_reflectAsm_bae823bffce129be3a71483cc259f72f0c347f50_416.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:566)
at java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)
at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:188)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:141)
at com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:342)
at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)
Error: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.getClassLoader(Class) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing java.lang.Package.getPackage(Package.java:353)
Call path from entry point to java.lang.Package.getPackage(String):
at java.lang.Package.getPackage(Package.java:353)
at scala.reflect.runtime.JavaMirrors$JavaMirror.packageNameToScala(JavaMirrors.scala:931)
at scala.reflect.runtime.JavaMirrors$JavaMirror$$anonfun$scala$reflect$runtime$JavaMirrors$$makeScalaPackage$1.apply(JavaMirrors.scala:943)
at scala.reflect.runtime.JavaMirrors$JavaMirror$$anonfun$scala$reflect$runtime$JavaMirrors$$makeScalaPackage$1.apply(JavaMirrors.scala:940)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Caused by: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported features in 12 methods Detailed message: Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.ThreadPoolExecutor$Worker
object java.util.HashMap$Node
object java.util.HashMap$Node[]
object java.util.HashMap
object java.util.HashSet
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: Detected a started Thread in the image heap. Threads running in the image generator are no longer running at image run time. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. The object was probably created by a class initializer and is reachable from a static field. You can request class initialization at image run time by using the option --initialize-at-build-time=. Or you can write your own initialization methods and call them explicitly from your main entry point.
Trace: object java.util.concurrent.locks.AbstractQueuedSynchronizer$Node
object java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject
object java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
object java.util.concurrent.ScheduledThreadPoolExecutor
object java.util.concurrent.Executors$DelegatedScheduledExecutorService
object com.mongodb.spark.connection.MongoClientCache
object com.mongodb.spark.MongoConnector$
method com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply()
Call path from entry point to com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply():
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at com.mongodb.spark.MongoSpark$Builder$$anonfun$4.apply(MongoSpark.scala:236)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: No instances of java.net.Inet4Address are allowed in the image heap as this class should be initialized at image runtime. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked.
Trace: object org.apache.spark.util.Utils$
method org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Tuple2)
Call path from entry point to org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Tuple2):
at org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Dataset.scala:313)
at org.apache.spark.sql.Dataset$$anonfun$11$$anonfun$apply$5.apply(Dataset.scala:313)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: No instances of sun.security.provider.NativePRNG are allowed in the image heap as this class should be initialized at image runtime. Object has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked.
Trace: object java.security.SecureRandom
object sun.security.ssl.SSLContextImpl$DefaultSSLContext
object sun.security.ssl.SSLSocketFactoryImpl
method com.mongodb.MongoClientOptions.getSocketFactory()
Call path from entry point to com.mongodb.MongoClientOptions.getSocketFactory():
at com.mongodb.MongoClientOptions.getSocketFactory(MongoClientOptions.java:718)
at com.mongodb.Mongo.createCluster(Mongo.java:757)
at com.mongodb.Mongo.createCluster(Mongo.java:728)
at com.mongodb.Mongo.(Mongo.java:313)
at com.mongodb.MongoClient.(MongoClient.java:342)
at com.mongodb.spark.connection.DefaultMongoClientFactory.create(DefaultMongoClientFactory.scala:49)
at com.mongodb.spark.connection.MongoClientCache.acquire(MongoClientCache.scala:55)
at com.mongodb.spark.MongoConnector.acquireClient(MongoConnector.scala:242)
at com.mongodb.spark.MongoConnector.withMongoClientDo(MongoConnector.scala:155)
at com.mongodb.spark.MongoConnector.withDatabaseDo(MongoConnector.scala:174)
at com.oracle.svm.reflect.MongoConnector_withDatabaseDo_5de8b2c3dd005217a8b2f13c62827cc77c08c2ed_323.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:566)
at java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)
at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:188)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:141)
at com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:342)
at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: com.mongodb.client.internal.Crypt.close(). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.MongoClientDelegate.close(MongoClientDelegate.java:130)
Call path from entry point to com.mongodb.client.internal.MongoClientDelegate.close():
at com.mongodb.client.internal.MongoClientDelegate.close(MongoClientDelegate.java:129)
at com.mongodb.client.internal.MongoClientImpl.close(MongoClientImpl.java:134)
at io.quarkus.mongodb.runtime.MongoClientRecorder.close(MongoClientRecorder.java:74)
at io.quarkus.mongodb.runtime.MongoClientRecorder$$Lambda$639/0x000000084645a840.run(Unknown Source)
at com.oracle.svm.core.jdk.RuntimeSupport.executeHooks(RuntimeSupport.java:144)
at com.oracle.svm.core.jdk.RuntimeSupport.executeStartupHooks(RuntimeSupport.java:89)
at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:143)
at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:186)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: com.mongodb.client.internal.Crypt.encrypt(java.lang.String, org.bson.RawBsonDocument). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:113)
Call path from entry point to com.mongodb.client.internal.CryptConnection.command(String, BsonDocument, FieldNameValidator, ReadPreference, Decoder, SessionContext, boolean, SplittablePayload, FieldNameValidator):
at com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:100)
at com.mongodb.client.internal.CryptConnection.command(CryptConnection.java:129)
at com.mongodb.operation.QueryBatchCursor.getMore(QueryBatchCursor.java:260)
at com.mongodb.operation.QueryBatchCursor.hasNext(QueryBatchCursor.java:138)
at scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:42)
at scala.collection.convert.Wrappers$MapWrapper$$anon$1$$anon$5.hasNext(Wrappers.scala:187)
at com.mongodb.connection.TlsChannelStreamFactoryFactory$SelectorMonitor$1.run(TlsChannelStreamFactoryFactory.java:142)
at java.lang.Thread.run(Thread.java:834)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: sun.nio.ch.DirectBuffer.cleaner(). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
at parsing org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(StorageUtils.scala:212)
Call path from entry point to org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(DirectBuffer):
at org.apache.spark.storage.StorageUtils$.cleanDirectBuffer(StorageUtils.scala:212)
at org.apache.spark.storage.StorageUtils$.dispose(StorageUtils.scala:207)
at org.apache.spark.util.io.ChunkedByteBuffer$$anonfun$dispose$1.apply(ChunkedByteBuffer.scala:166)
at org.apache.spark.util.io.ChunkedByteBuffer$$anonfun$dispose$1.apply(ChunkedByteBuffer.scala:166)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: com.mongodb.crypt.capi.MongoCrypts. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
at parsing com.mongodb.client.internal.Crypts.createCrypt(Crypts.java:35)
Call path from entry point to com.mongodb.client.internal.Crypts.createCrypt(SimpleMongoClient, AutoEncryptionSettings):
at com.mongodb.client.internal.Crypts.createCrypt(Crypts.java:35)
at com.mongodb.client.internal.MongoClientImpl.(MongoClientImpl.java:70)
at com.mongodb.client.internal.MongoClientImpl.(MongoClientImpl.java:61)
at com.mongodb.client.MongoClients.create(MongoClients.java:114)
at com.mongodb.client.MongoClients.create(MongoClients.java:50)
at io.quarkus.mongodb.runtime.MongoClientRecorder.initialize(MongoClientRecorder.java:177)
at io.quarkus.mongodb.runtime.MongoClientRecorder.configureTheClient(MongoClientRecorder.java:57)
at io.quarkus.deployment.steps.MongoClientProcessor$build24.deploy_0(MongoClientProcessor$build24.zig:101)
at io.quarkus.deployment.steps.MongoClientProcessor$build24.deploy(MongoClientProcessor$build24.zig:136)
at io.quarkus.runner.ApplicationImpl.doStart(ApplicationImpl.zig:242)
at io.quarkus.runtime.Application.start(Application.java:87)
at io.quarkus.runtime.Application.run(Application.java:210)
at io.quarkus.runner.GeneratedMain.main(GeneratedMain.zig:41)
at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:151)
at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:186)
at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: sun.misc.Cleaner. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
at parsing org.apache.spark.unsafe.Platform.allocateDirectBuffer(Platform.java:172)
Call path from entry point to org.apache.spark.unsafe.Platform.allocateDirectBuffer(int):
at org.apache.spark.unsafe.Platform.allocateDirectBuffer(Platform.java:165)
at org.apache.spark.storage.memory.SerializedValuesHolder$$anonfun$7.apply(MemoryStore.scala:695)
at org.apache.spark.storage.memory.SerializedValuesHolder$$anonfun$7.apply(MemoryStore.scala:695)
at scala.collection.immutable.Stream.map(Stream.scala:418)
at org.apache.spark.deploy.worker.ExecutorRunner.org$apache$spark$deploy$worker$ExecutorRunner$$fetchAndRunExecutor(ExecutorRunner.scala:145)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:73)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
Error: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.defineClass(String, byte[], int, int, ProtectionDomain) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(AccessClassLoader.java:103)
Call path from entry point to com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(String, byte[]):
at com.esotericsoftware.reflectasm.AccessClassLoader.defineClass(AccessClassLoader.java:98)
at com.esotericsoftware.reflectasm.ConstructorAccess.get(ConstructorAccess.java:103)
at com.twitter.chill.Instantiators$.reflectAsm(KryoBase.scala:137)
at com.oracle.svm.reflect.Instantiators$_reflectAsm_bae823bffce129be3a71483cc259f72f0c347f50_416.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:566)
at java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)
at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:188)
at com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:141)
at com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:342)
at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)
Error: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.getClassLoader(Class) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing java.lang.Package.getPackage(Package.java:353)
Call path from entry point to java.lang.Package.getPackage(String):
at java.lang.Package.getPackage(Package.java:353)
at scala.reflect.runtime.JavaMirrors$JavaMirror.packageNameToScala(JavaMirrors.scala:931)
at scala.reflect.runtime.JavaMirrors$JavaMirror$$anonfun$scala$reflect$runtime$JavaMirrors$$makeScalaPackage$1.apply(JavaMirrors.scala:943)
at scala.reflect.runtime.JavaMirrors$JavaMirror$$anonfun$scala$reflect$runtime$JavaMirrors$$makeScalaPackage$1.apply(JavaMirrors.scala:940)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.AnalysisException.getMessage(AnalysisException.scala:46)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1148)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0)
20/07/17 04:04:04 INFO ShutdownHookManager: Shutdown hook called Error: Image build request failed with exit status 1 [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 14:13 min [INFO] Finished at: 2020-07-17T04:04:05Z [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal io.quarkus:quarkus-maven-plugin:1.2.1.Final:build (default) on project medium-quarkus: Failed to build a runnable JAR: Failed to augment application classes: Build failure: Build failed due to errors [ERROR] [error]: Build step io.quarkus.deployment.pkg.steps.NativeImageBuildStep#build threw an exception: java.lang.RuntimeException: Failed to build native image [ERROR] at io.quarkus.deployment.pkg.steps.NativeImageBuildStep.build(NativeImageBuildStep.java:319) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) [ERROR] at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915) [ERROR] at io.quarkus.builder.BuildContext.run(BuildContext.java:279) [ERROR] at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) [ERROR] at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011) [ERROR] at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535) [ERROR] at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426) [ERROR] at java.lang.Thread.run(Thread.java:748) [ERROR] at org.jboss.threads.JBossThread.run(JBossThread.java:479) [ERROR] Caused by: java.lang.RuntimeException: Image generation failed. Exit code: 1 [ERROR] at io.quarkus.deployment.pkg.steps.NativeImageBuildStep.build(NativeImageBuildStep.java:308) [ERROR] ... 12 more [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException The command '/bin/sh -c mvn -f /usr/src/app/pom.xml -s /usr/src/app/settings.xml -Pnative package
Expected behavior Package successfully
Actual behavior (Describe the actual behavior clearly and concisely.)
To Reproduce Steps to reproduce the behavior:
Configuration
Screenshots
(If applicable, add screenshots to help explain your problem.)
Environment (please complete the following information):
uname -a
orver
: linux amd64 3.10.0-862.43.3.el7.x86_64java -version
: 11.0.6mvnw --version
orgradlew --version
):Additional context (Add any other context about the problem here.)