qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Keith Wall (JIRA)" <j...@apache.org>
Subject [jira] [Created] (QPID-5782) VirtualHostHouseKeeper tries to check queues that are not yet open leading to NPE in logs
Date Fri, 23 May 2014 13:12:02 GMT
Keith Wall created QPID-5782:
--------------------------------

             Summary: VirtualHostHouseKeeper tries to check queues that are not yet open leading
to NPE in logs
                 Key: QPID-5782
                 URL: https://issues.apache.org/jira/browse/QPID-5782
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: 0.29
            Reporter: Keith Wall


Since QPID-5710, there has been a possibility that the housekeeper can attempt to check that
message status on queues that are not yet open, and this leads to an NPE as such queues have
a null entry list.

TransactionTimeoutTest occasionally shows this problem (see log excerpt below).  It does not
cause a test failure as the housekeeper merely logs all exceptions and continues.

It seems QPID-5710 introduced this possibility as it moved the creation of the queue entry
list from construction time to onOpen().

{noformat}
IoReceiver - localhost/127.0.0.1:15672 2014-05-23 08:00:17,586 DEBUG [qpid.client.protocol.AMQProtocolHandler]
(1873784078)Method frame received: [ExchangeDeclareOkBodyImpl: ]
main 2014-05-23 08:00:17,586 DEBUG [qpid.protocol] SEND: [org.apache.qpid.client.protocol.AMQProtocolHandler@6fafad0e]
Frame channelId: 3, bodyFrame: [QueueDeclareBodyImpl: ticket=0, queue=TransactionTimeoutTest-testConsumerIdleCommit,
passive=false, durable=true, exclusive=false, autoDelete=false, nowait=false, arguments=null]
IoReceiver - /127.0.0.1:50620 2014-05-23 08:00:17,586 DEBUG [server.protocol.v0_8.AMQProtocolEngine]
Frame handled in 0 ms. Frame: Frame channelId: 3, bodyFrame: [ExchangeDeclareBodyImpl: ticket=0,
exchange=amq.direct, type=direct, passive=true, durable=false, autoDelete=false, internal=false,
nowait=false, arguments=null]
IoReceiver - /127.0.0.1:50620 2014-05-23 08:00:17,586 DEBUG [server.protocol.v0_8.AMQChannel]
sync() called on channel 3(1965183178)
IoReceiver - /127.0.0.1:50620 2014-05-23 08:00:17,586 DEBUG [server.protocol.v0_8.AMQProtocolEngine]
RECV: Frame channelId: 3, bodyFrame: [QueueDeclareBodyImpl: ticket=0, queue=TransactionTimeoutTest-testConsumerIdleCommit,
passive=false, durable=true, exclusive=false, autoDelete=false, nowait=false, arguments=null]
IoReceiver - /127.0.0.1:50620 2014-05-23 08:00:17,587 DEBUG [server.store.berkeleydb.BDBMessageStore]
Create [name=TransactionTimeoutTest-testConsumerIdleCommit, categoryClass=interface org.apache.qpid.server.model.Queue,
type=Queue, id=848209cf-5c99-4b95-8488-c07973eb199f]
IoReceiver - /127.0.0.1:50620 2014-05-23 08:00:17,587 DEBUG [server.store.berkeleydb.BDBMessageStore]
Storing configured object record: [name=TransactionTimeoutTest-testConsumerIdleCommit, categoryClass=interface
org.apache.qpid.server.model.Queue, type=Queue, id=848209cf-5c99-4b95-8488-c07973eb199f]
test:VirtualHostHouseKeepingTask 2014-05-23 08:00:17,589 DEBUG [qpid.server.virtualhost.AbstractVirtualHost]
Checking message status for queue: TransactionTimeoutTest-testConsumerIdleCommit
test:VirtualHostHouseKeepingTask 2014-05-23 08:00:17,589 ERROR [qpid.server.virtualhost.AbstractVirtualHost]
Exception in housekeeping for queue: TransactionTimeoutTest-testConsumerIdleCommit
java.lang.NullPointerException
        at org.apache.qpid.server.queue.AbstractQueue.checkMessageStatus(AbstractQueue.java:1999)
        at org.apache.qpid.server.virtualhost.AbstractVirtualHost$VirtualHostHouseKeepingTask.execute(AbstractVirtualHost.java:935)
        at org.apache.qpid.server.virtualhost.HouseKeepingTask$1.run(HouseKeepingTask.java:61)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:356)
        at org.apache.qpid.server.virtualhost.HouseKeepingTask.run(HouseKeepingTask.java:54)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        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)
IoReceiver - /127.0.0.1:50620 2014-05-23 08:00:17,598 INFO [qpid.message.queue.created] [con:952(guest@/127.0.0.1:50620/test)/ch:3]
[vh(/test)/qu(TransactionTimeoutTest-testConsumerIdleCommit)] QUE-1001 : Create : Durable
 {noformat} 





--
This message was sent by Atlassian JIRA
(v6.2#6252)

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


Mime
View raw message