You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Serge Smertin (JIRA)" <ji...@apache.org> on 2014/09/01 16:12:20 UTC

[jira] [Updated] (AMQ-5339) LevelDBClient operation failed. NullPointerException after entering recovery mode

     [ https://issues.apache.org/jira/browse/AMQ-5339?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Serge Smertin updated AMQ-5339:
-------------------------------
    Description: 
Once in a while we're getting following exception in AMQ logs and there is no other way than purging the queue. How can we overcome this issue? Is it okay to use LevelDB store now? Any answers? :)

2014-09-01 13:25:52,065 [erSimpleAppMain] DEBUG AbstractRegion                 - localhost adding destination: queue://files/dead
2014-09-01 13:25:52,081 [erSimpleAppMain] DEBUG TaskRunnerFactory              - Initialized TaskRunnerFactory[ActiveMQ BrokerService[localhost] Task] using ExecutorService: null
2014-09-01 13:25:52,098 [erSimpleAppMain] WARN  LevelDBClient                  - DB operation failed. (entering recovery mode)
2014-09-01 13:25:52,099 [erSimpleAppMain] DEBUG LevelDBClient                  - java.lang.NullPointerException
java.lang.NullPointerException
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$queueCursor$1.apply(LevelDBClient.scala:966)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$queueCursor$1.apply(LevelDBClient.scala:962)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1$$anonfun$apply$mcV$sp$9.apply(LevelDBClient.scala:1038)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1$$anonfun$apply$mcV$sp$9.apply(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient$RichDB.check$4(LevelDBClient.scala:309)
        at org.apache.activemq.leveldb.LevelDBClient$RichDB.cursorRange(LevelDBClient.scala:311)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply$mcV$sp(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient.usingIndex(LevelDBClient.scala:760)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$retryUsingIndex$1.apply(LevelDBClient.scala:766)
        at org.apache.activemq.leveldb.util.RetrySupport$.retry(RetrySupport.scala:38)
        at org.apache.activemq.leveldb.LevelDBClient.retry(LevelDBClient.scala:457)
        at org.apache.activemq.leveldb.LevelDBClient.retryUsingIndex(LevelDBClient.scala:766)
        at org.apache.activemq.leveldb.LevelDBClient.collectionCursor(LevelDBClient.scala:1036)
        at org.apache.activemq.leveldb.LevelDBClient.queueCursor(LevelDBClient.scala:962)
        at org.apache.activemq.leveldb.DBManager.cursorMessages(DBManager.scala:633)
        at org.apache.activemq.leveldb.LevelDBStore$LevelDBMessageStore.recoverNextMessages(LevelDBStore.scala:643)
        at org.apache.activemq.broker.region.Queue.initialize(Queue.java:381)
        at org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:87)
        at org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:526)
        at org.apache.activemq.broker.jmx.ManagedQueueRegion.createDestination(ManagedQueueRegion.java:56)
        at org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:136)
        at org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:277)
        at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)

  was:
Once in a while we're getting following exception in AMQ logs and there is no other way than purging the queue. How can we overcome this issue? Is it okay to use LevelDB store now? Any answers? :)

2014-09-01 13:25:52,065 [erSimpleAppMain] DEBUG AbstractRegion                 - localhost adding destination: queue://files/dead
2014-09-01 13:25:52,081 [erSimpleAppMain] DEBUG TaskRunnerFactory              - Initialized TaskRunnerFactory[ActiveMQ BrokerService[localhost] Task] using ExecutorService: null
2014-09-01 13:25:52,098 [erSimpleAppMain] WARN  LevelDBClient                  - DB operation failed. (entering recovery mode)
2014-09-01 13:25:52,099 [erSimpleAppMain] DEBUG LevelDBClient                  - java.lang.NullPointerException
java.lang.NullPointerException
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$queueCursor$1.apply(LevelDBClient.scala:966)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$queueCursor$1.apply(LevelDBClient.scala:962)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1$$anonfun$apply$mcV$sp$9.apply(LevelDBClient.scala:1038)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1$$anonfun$apply$mcV$sp$9.apply(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient$RichDB.check$4(LevelDBClient.scala:309)
        at org.apache.activemq.leveldb.LevelDBClient$RichDB.cursorRange(LevelDBClient.scala:311)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply$mcV$sp(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply(LevelDBClient.scala:1037)
        at org.apache.activemq.leveldb.LevelDBClient.usingIndex(LevelDBClient.scala:760)
        at org.apache.activemq.leveldb.LevelDBClient$$anonfun$retryUsingIndex$1.apply(LevelDBClient.scala:766)
        at org.apache.activemq.leveldb.util.RetrySupport$.retry(RetrySupport.scala:38)
        at org.apache.activemq.leveldb.LevelDBClient.retry(LevelDBClient.scala:457)
        at org.apache.activemq.leveldb.LevelDBClient.retryUsingIndex(LevelDBClient.scala:766)
        at org.apache.activemq.leveldb.LevelDBClient.collectionCursor(LevelDBClient.scala:1036)
        at org.apache.activemq.leveldb.LevelDBClient.queueCursor(LevelDBClient.scala:962)
        at org.apache.activemq.leveldb.DBManager.cursorMessages(DBManager.scala:633)
        at org.apache.activemq.leveldb.LevelDBStore$LevelDBMessageStore.recoverNextMessages(LevelDBStore.scala:643)
        at org.apache.activemq.broker.region.Queue.initialize(Queue.java:381)
        at org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:87)
        at org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:526)
        at org.apache.activemq.broker.jmx.ManagedQueueRegion.createDestination(ManagedQueueRegion.java:56)
        at org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:136)
        at org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:277)
        at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
        at org.apache.activemq.advisory.AdvisoryBroker.addDestination(AdvisoryBroker.java:174)
        at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
        at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
        at org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:151)
        at org.apache.activemq.broker.region.AbstractRegion.start(AbstractRegion.java:98)
        at org.apache.activemq.broker.region.RegionBroker.start(RegionBroker.java:179)
        at org.apache.activemq.broker.jmx.ManagedRegionBroker.start(ManagedRegionBroker.java:119)
        at org.apache.activemq.broker.BrokerFilter.start(BrokerFilter.java:157)
        at org.apache.activemq.broker.BrokerFilter.start(BrokerFilter.java:157)
        at org.apache.activemq.broker.TransactionBroker.start(TransactionBroker.java:122)
        at org.apache.activemq.broker.BrokerService$5.start(BrokerService.java:2078)
        at org.apache.activemq.broker.BrokerService.doStartBroker(BrokerService.java:636)
        at org.apache.activemq.broker.BrokerService.startBroker(BrokerService.java:617)
        at org.apache.activemq.broker.BrokerService.start(BrokerService.java:553)
        at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)


> LevelDBClient operation failed. NullPointerException after entering recovery mode
> ---------------------------------------------------------------------------------
>
>                 Key: AMQ-5339
>                 URL: https://issues.apache.org/jira/browse/AMQ-5339
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: activemq-leveldb-store
>    Affects Versions: 5.8.0
>         Environment: CentOS 6.5
>            Reporter: Serge Smertin
>            Priority: Critical
>
> Once in a while we're getting following exception in AMQ logs and there is no other way than purging the queue. How can we overcome this issue? Is it okay to use LevelDB store now? Any answers? :)
> 2014-09-01 13:25:52,065 [erSimpleAppMain] DEBUG AbstractRegion                 - localhost adding destination: queue://files/dead
> 2014-09-01 13:25:52,081 [erSimpleAppMain] DEBUG TaskRunnerFactory              - Initialized TaskRunnerFactory[ActiveMQ BrokerService[localhost] Task] using ExecutorService: null
> 2014-09-01 13:25:52,098 [erSimpleAppMain] WARN  LevelDBClient                  - DB operation failed. (entering recovery mode)
> 2014-09-01 13:25:52,099 [erSimpleAppMain] DEBUG LevelDBClient                  - java.lang.NullPointerException
> java.lang.NullPointerException
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$queueCursor$1.apply(LevelDBClient.scala:966)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$queueCursor$1.apply(LevelDBClient.scala:962)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1$$anonfun$apply$mcV$sp$9.apply(LevelDBClient.scala:1038)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1$$anonfun$apply$mcV$sp$9.apply(LevelDBClient.scala:1037)
>         at org.apache.activemq.leveldb.LevelDBClient$RichDB.check$4(LevelDBClient.scala:309)
>         at org.apache.activemq.leveldb.LevelDBClient$RichDB.cursorRange(LevelDBClient.scala:311)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply$mcV$sp(LevelDBClient.scala:1037)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply(LevelDBClient.scala:1037)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$collectionCursor$1.apply(LevelDBClient.scala:1037)
>         at org.apache.activemq.leveldb.LevelDBClient.usingIndex(LevelDBClient.scala:760)
>         at org.apache.activemq.leveldb.LevelDBClient$$anonfun$retryUsingIndex$1.apply(LevelDBClient.scala:766)
>         at org.apache.activemq.leveldb.util.RetrySupport$.retry(RetrySupport.scala:38)
>         at org.apache.activemq.leveldb.LevelDBClient.retry(LevelDBClient.scala:457)
>         at org.apache.activemq.leveldb.LevelDBClient.retryUsingIndex(LevelDBClient.scala:766)
>         at org.apache.activemq.leveldb.LevelDBClient.collectionCursor(LevelDBClient.scala:1036)
>         at org.apache.activemq.leveldb.LevelDBClient.queueCursor(LevelDBClient.scala:962)
>         at org.apache.activemq.leveldb.DBManager.cursorMessages(DBManager.scala:633)
>         at org.apache.activemq.leveldb.LevelDBStore$LevelDBMessageStore.recoverNextMessages(LevelDBStore.scala:643)
>         at org.apache.activemq.broker.region.Queue.initialize(Queue.java:381)
>         at org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:87)
>         at org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:526)
>         at org.apache.activemq.broker.jmx.ManagedQueueRegion.createDestination(ManagedQueueRegion.java:56)
>         at org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:136)
>         at org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:277)
>         at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)