Uploaded image for project: 'JBoss A-MQ'
  1. JBoss A-MQ
  2. ENTMQ-2055

Broker cannot start with levelDB persistence adapter

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • None
    • JBoss A-MQ 6.3.x
    • leveldb
    • None
    • Hide
      1. install JBoss Fuse 6.3.0 build 237
      2. Configure levelDB persistence adapter in activemq.xml
                <persistenceAdapter>
                    <levelDB directory="${data}/leveldb"/>
                </persistenceAdapter>
        
      3. start JBoss fuse
      Show
      install JBoss Fuse 6.3.0 build 237 Configure levelDB persistence adapter in activemq.xml <persistenceAdapter> <levelDB directory= "${data}/leveldb" /> </persistenceAdapter> start JBoss fuse

      When you configure broker to use levelDB as its persistence adapter, then broker fails to start. Following exception appears in the log:

      09:59:34,916 | INFO  | ception handler. | BrokerService                    | 219 - org.apache.activemq.activemq-osgi - 5.11.0.redhat-630237 | No IOExceptionHandler registered, ignoring IO exception
      java.io.IOException: com.google.common.io.Closeables.closeQuietly(Ljava/io/Closeable;)V
      	at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:40)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient.might_fail(LevelDBClient.scala:552)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient.replay_init(LevelDBClient.scala:667)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient.start(LevelDBClient.scala:558)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.DBManager.start(DBManager.scala:648)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBStore.doStart(LevelDBStore.scala:312)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.broker.BrokerService.doStartPersistenceAdapter(BrokerService.java:661)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.broker.BrokerService.startPersistenceAdapter(BrokerService.java:645)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.broker.BrokerService.start(BrokerService.java:610)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at io.fabric8.mq.fabric.ActiveMQServiceFactory$ClusteredConfiguration.doStart(ActiveMQServiceFactory.java:549)[231:io.fabric8.mq.mq-fabric:1.2.0.redhat-630237]
      	at io.fabric8.mq.fabric.ActiveMQServiceFactory$ClusteredConfiguration.access$400(ActiveMQServiceFactory.java:359)[231:io.fabric8.mq.mq-fabric:1.2.0.redhat-630237]
      	at io.fabric8.mq.fabric.ActiveMQServiceFactory$ClusteredConfiguration$1.run(ActiveMQServiceFactory.java:490)[231:io.fabric8.mq.mq-fabric:1.2.0.redhat-630237]
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_111]
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_111]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_111]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_111]
      	at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
      Caused by: java.lang.NoSuchMethodError: com.google.common.io.Closeables.closeQuietly(Ljava/io/Closeable;)V
      	at org.iq80.leveldb.impl.MMapLogWriter.close(MMapLogWriter.java:83)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.iq80.leveldb.impl.VersionSet.initializeIfNeeded(VersionSet.java:111)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.iq80.leveldb.impl.VersionSet.<init>(VersionSet.java:91)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.iq80.leveldb.impl.DbImpl.<init>(DbImpl.java:178)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.iq80.leveldb.impl.Iq80DBFactory.open(Iq80DBFactory.java:59)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient$$anonfun$replay_init$2.apply$mcV$sp(LevelDBClient.scala:671)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient$$anonfun$replay_init$2.apply(LevelDBClient.scala:667)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient$$anonfun$replay_init$2.apply(LevelDBClient.scala:667)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	at org.apache.activemq.leveldb.LevelDBClient.might_fail(LevelDBClient.scala:549)[219:org.apache.activemq.activemq-osgi:5.11.0.redhat-630237]
      	... 16 more
      09:59:34,929 | INFO  | ception handler. | LevelDBStore                     | 219 - org.apache.activemq.activemq-osgi - 5.11.0.redhat-630237 | Stopped LevelDB[/home/jknetl/opt/jboss-fuse-6.3.0.redhat-237/data/amq/leveldb]
      

              gtully@redhat.com Gary Tully
              knetl.j@gmail.com Jakub Knetl (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: