You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2015/10/23 18:00:28 UTC

[jira] [Commented] (QPID-6808) ServerScopedRuntimeExceptions occurring during asynchronous recovery don't shutdown the Broker

    [ https://issues.apache.org/jira/browse/QPID-6808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14971230#comment-14971230 ] 

ASF subversion and git services commented on QPID-6808:
-------------------------------------------------------

Commit 1710254 from [~lorenz.quack] in branch 'java/trunk'
[ https://svn.apache.org/r1710254 ]

QPID-6808: [Java Broker] Shut down the broker when an uncaught exception occurs during async recovery

> ServerScopedRuntimeExceptions occurring during asynchronous recovery don't shutdown the Broker
> ----------------------------------------------------------------------------------------------
>
>                 Key: QPID-6808
>                 URL: https://issues.apache.org/jira/browse/QPID-6808
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: 0.32
>            Reporter: Keith Wall
>            Assignee: Lorenz Quack
>
> By design, the {{ServerScopedRuntimeExceptions}} is intended to be fatal to the Broker.  If such an exception is thrown the Broker should always shutdown as soon as possible so that the nature of the problem can be investigate.  
> A user using the Asynchronous Recovery (0.32) feature encountered the following issue. Despite of the SSRTE, the Broker kept running, meaning that the error went unnoticed.
> {noformat}
> 2015-10-21 13:48:49,245 ERROR [Queue Recoverer : xxxx-xxxx (vh: default)] org.apache.qpid.server.util.ServerScopedRuntimeException Unexpected exception occurred on store operation
> com.sleepycat.je.LockTimeoutException: (JE 5.0.104) Lock expired. Locker 1538378594 -1_Queue Recoverer : xxxx-xxxxx (vh: default)_ThreadLocker: waited for lock on database=QUEUE_ENTRIES LockAddr:1973403125 LSN=0x9e7d/0x68098 type=READ grant=WAIT_NEW timeoutMillis=500 startTime=1445435328744 endTime=1445435329244
> Owners: [<LockInfo locker="1886923901 215323278_IoReceiver - /xxx.xxx.xxx.xx:59827_Txn" type="WRITE"/>]
> Waiters: []
>  
>         at com.sleepycat.je.txn.LockManager.newLockTimeoutException(LockManager.java:665)
>         at com.sleepycat.je.txn.LockManager.makeTimeoutMsgInternal(LockManager.java:623)
>         at com.sleepycat.je.txn.SyncedLockManager.makeTimeoutMsg(SyncedLockManager.java:97)
>         at com.sleepycat.je.txn.LockManager.lockInternal(LockManager.java:390)
>         at com.sleepycat.je.txn.LockManager.lock(LockManager.java:276)
>         at com.sleepycat.je.txn.BasicLocker.lockInternal(BasicLocker.java:118)
>         at com.sleepycat.je.txn.Locker.lock(Locker.java:443)
>         at com.sleepycat.je.dbi.CursorImpl.lockLN(CursorImpl.java:2642)
>         at com.sleepycat.je.dbi.CursorImpl.lockLN(CursorImpl.java:2443)
>         at com.sleepycat.je.dbi.CursorImpl.fetchCurrent(CursorImpl.java:2272)
>         at com.sleepycat.je.dbi.CursorImpl.getCurrentAlreadyLatched(CursorImpl.java:1480)
>         at com.sleepycat.je.dbi.CursorImpl.getNext(CursorImpl.java:1607)
>         at com.sleepycat.je.Cursor.retrieveNextAllowPhantoms(Cursor.java:3080)
>         at com.sleepycat.je.Cursor.retrieveNextNoDups(Cursor.java:2957)
>         at com.sleepycat.je.Cursor.retrieveNext(Cursor.java:2931)
>         at com.sleepycat.je.Cursor.getNext(Cursor.java:1148)
>         at org.apache.qpid.server.store.berkeleydb.AbstractBDBMessageStore.visitMessageInstances(AbstractBDBMessageStore.java:202)
>         at org.apache.qpid.server.virtualhost.AsynchronousMessageStoreRecoverer$AsynchronousRecoverer.recoverQueue(AsynchronousMessageStoreRecoverer.java:145)
>         at org.apache.qpid.server.virtualhost.AsynchronousMessageStoreRecoverer$AsynchronousRecoverer.access$900(AsynchronousMessageStoreRecoverer.java:81)
>         at org.apache.qpid.server.virtualhost.AsynchronousMessageStoreRecoverer$AsynchronousRecoverer$QueueRecoveringTask.run(AsynchronousMessageStoreRecoverer.java:409)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>         at java.lang.Thread.run(Thread.java:744)
> {noformat}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org