Uploaded image for project: 'Quarkus'
  1. Quarkus
  2. QUARKUS-5180

Unable to run application with kafka-streams on aarch64 built using native builder image

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • 3.15.2.GA
    • 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
    • team/eng
    • False
    • None
    • False
    • +
    • Hide

      Using code.quarkus:

      wget -O app.zip "https://code.quarkus.io/d?e=kafka-streams&cn=code.quarkus.io"
      unzip -q app.zip
      cd code-with-quarkus/
      mvn clean package -Dnative -Dquarkus.native.container-build=true
      target/code-with-quarkus-1.0.0-SNAPSHOT-runner
      

      Using https://github.com/quarkusio/quarkus-quickstarts:

      git clone https://github.com/quarkusio/quarkus-quickstarts -b development
      cd quarkus-quickstarts
      mvn clean verify -f kafka-streams-quickstart -Dnative -Dquarkus.native.container-build=true
      
      Show
      Using code.quarkus: wget -O app.zip "https: //code.quarkus.io/d?e=kafka-streams&cn=code.quarkus.io" unzip -q app.zip cd code-with-quarkus/ mvn clean package -Dnative -Dquarkus. native .container-build= true target/code-with-quarkus-1.0.0-SNAPSHOT-runner Using https://github.com/quarkusio/quarkus-quickstarts: git clone https: //github.com/quarkusio/quarkus-quickstarts -b development cd quarkus-quickstarts mvn clean verify -f kafka-streams-quickstart -Dnative -Dquarkus. native .container-build= true
    • ---

      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.

              fzakkak1@redhat.com Foivos Zakkak
              mjurc@redhat.com Michal Jurc
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: