Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-756

Natives for ActiveMQ Artemis are not loaded

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • 7.0.0.DR8
    • Build System, JMS
    • None

    Description

      Natives [1] for ActiveMQ Artemis are not loaded during start of EAP server.

      To reproduce:
      1. Download EAP 7.0.0.DR8 and unzip - http://download.lab.bos.redhat.com/devel/candidates/JBEAP/JBEAP-7.0.0.DR8/jboss-eap-7.0.0.DR8.zip
      2. Delete all natives in org.apache.activemq.artemis module. This step is necessary as currently there already are natives in EAP zip.

      Natives are NOT loaded and info message:

      10:30:59,284 INFO  [org.wildfly.extension.messaging-activemq] (MSC service thread 1-7) WFLYMSGAMQ0075: AIO wasn't located on this platform, it will fall back to using pure Java NIO. Your platform is Linux, install LibAIO to enable the AIO journal and achieve optimal performance.

      is logged to server.log. If traces are enabled then more information is provided:

      10:30:59,275 TRACE [org.apache.activemq.artemis.journal] (MSC service thread 1-7) artemis-native being loaded
      10:30:59,278 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) artemis-native -> error loading the native library: java.lang.UnsatisfiedLinkError: no artemis-native in java.library.path
      	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1865)
      	at java.lang.Runtime.loadLibrary0(Runtime.java:870)
      	at java.lang.System.loadLibrary(System.java:1122)
      	at org.apache.activemq.artemis.core.asyncio.impl.AsynchronousFileImpl.loadLibrary(AsynchronousFileImpl.java:118)
      	at org.apache.activemq.artemis.core.asyncio.impl.AsynchronousFileImpl.<clinit>(AsynchronousFileImpl.java:143)
      	at org.apache.activemq.artemis.core.journal.impl.AIOSequentialFileFactory.isSupported(AIOSequentialFileFactory.java:107)
      	at org.wildfly.extension.messaging.activemq.ActiveMQServerService.start(ActiveMQServerService.java:142)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      
      10:30:59,279 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) Library artemis-native not found!
      10:30:59,279 TRACE [org.apache.activemq.artemis.journal] (MSC service thread 1-7) artemis-native-64 being loaded
      10:30:59,279 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) artemis-native-64 -> error loading the native library: java.lang.UnsatisfiedLinkError: no artemis-native-64 in java.library.path
      	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1865)
      	at java.lang.Runtime.loadLibrary0(Runtime.java:870)
      	at java.lang.System.loadLibrary(System.java:1122)
      	at org.apache.activemq.artemis.core.asyncio.impl.AsynchronousFileImpl.loadLibrary(AsynchronousFileImpl.java:118)
      	at org.apache.activemq.artemis.core.asyncio.impl.AsynchronousFileImpl.<clinit>(AsynchronousFileImpl.java:143)
      	at org.apache.activemq.artemis.core.journal.impl.AIOSequentialFileFactory.isSupported(AIOSequentialFileFactory.java:107)
      	at org.wildfly.extension.messaging.activemq.ActiveMQServerService.start(ActiveMQServerService.java:142)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      
      10:30:59,279 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) Library artemis-native-64 not found!
      10:30:59,280 TRACE [org.apache.activemq.artemis.journal] (MSC service thread 1-7) artemis-native-32 being loaded
      10:30:59,280 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) artemis-native-32 -> error loading the native library: java.lang.UnsatisfiedLinkError: no artemis-native-32 in java.library.path
      	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1865)
      	at java.lang.Runtime.loadLibrary0(Runtime.java:870)
      	at java.lang.System.loadLibrary(System.java:1122)
      	at org.apache.activemq.artemis.core.asyncio.impl.AsynchronousFileImpl.loadLibrary(AsynchronousFileImpl.java:118)
      	at org.apache.activemq.artemis.core.asyncio.impl.AsynchronousFileImpl.<clinit>(AsynchronousFileImpl.java:143)
      	at org.apache.activemq.artemis.core.journal.impl.AIOSequentialFileFactory.isSupported(AIOSequentialFileFactory.java:107)
      	at org.wildfly.extension.messaging.activemq.ActiveMQServerService.start(ActiveMQServerService.java:142)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      
      10:30:59,280 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) Library artemis-native-32 not found!
      10:30:59,281 DEBUG [org.apache.activemq.artemis.journal] (MSC service thread 1-7) Couldn't locate LibAIO Wrapper
      10:30:59,284 INFO  [org.wildfly.extension.messaging-activemq] (MSC service thread 1-7) WFLYMSGAMQ0075: AIO wasn't located on this platform, it will fall back to using pure Java NIO. Your platform is Linux, install LibAIO to enable the AIO journal and achieve optimal performance.
      

      If natives are loaded succefully then following info message is logged in server.log:

      09:09:42,866 INFO  [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 70) AMQ221012: Using AIO Journal

      Attachments

        Activity

          People

            pgier@redhat.com Paul Gier (Inactive)
            mnovak1@redhat.com Miroslav Novak
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: