-
Bug
-
Resolution: Unresolved
-
Major
-
3.15-Interstellar.GA, 3.8.6.GA, 3.15.1.ER1, 3.15.1.ER2, 3.8.6.SP1, 3.15.1.CR1, 3.15.1.CR2
-
False
-
None
-
False
-
+
-
-
---
-
-
Unable to run application with kafka-stream on aarch64 in native, application built using builder image (use-case of RHBQ).
Application startup fails with
[hudson@ampere-mtsnow-altramax-03-vm-13 code-with-quarkus]$ target/code-with-quarkus-1.0.0-SNAPSHOT-runner Sep 15, 2024 7:18:35 AM io.quarkus.runtime.ApplicationLifecycleManager run ERROR: Failed to start application java.lang.RuntimeException: Failed to start quarkus at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source) at io.quarkus.runtime.Application.start(Application.java:101) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:119) at io.quarkus.runtime.Quarkus.run(Quarkus.java:71) at io.quarkus.runtime.Quarkus.run(Quarkus.java:44) at io.quarkus.runtime.Quarkus.run(Quarkus.java:124) at io.quarkus.runner.GeneratedMain.main(Unknown Source) Caused by: java.lang.ExceptionInInitializerError at io.quarkus.kafka.streams.runtime.KafkaStreamsRecorder.loadRocksDb(KafkaStreamsRecorder.java:14) at io.quarkus.deployment.steps.KafkaStreamsProcessor$loadRocksDb1611413226.deploy_0(Unknown Source) at io.quarkus.deployment.steps.KafkaStreamsProcessor$loadRocksDb1611413226.deploy(Unknown Source) ... 7 more Caused by: java.lang.RuntimeException: librocksdbjni-linux-aarch64.so was not found inside JAR. at org.rocksdb.NativeLibraryLoader.loadLibraryFromJarToTemp(NativeLibraryLoader.java:118) at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:102) at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:82) at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:70) at org.rocksdb.RocksDB.<clinit>(RocksDB.java:39) ... 10 more
The binary contains strings with mixture of librocksdbjni-linux-aarch64.so} and librocksdbjni-linux64.so.
strings target/code-with-quarkus-1.0.0-SNAPSHOT-runner | grep librocksdbjni librocksdbjni-linux-aarch64.so librocksdbjni-linux64.so librocksdbjni
If the application is built using locally installed Mandrel, the app works well and strings command returns just librocksdbjni-linux-aarch64.so in 2 occurrences.
docker inspect quay.io/quarkus/ubi-quarkus-mandrel-builder-image:jdk-21 reports architecture as arm64.
This was detected when working on investigation of Quarkus Quickstarts failures investigation on aarch64 platform.
- is related to
-
QUARKUS-4321 Applications using quarkus-kafka-streams extension are not runnable on aarch64 due to missing librocksdbjni-linux-aarch64.so
- Closed
- links to