Keith Wall created QPID-6619:
--------------------------------

             Summary: NPEs when creating consumers / queues
                 Key: QPID-6619
                 URL: https://issues.apache.org/jira/browse/QPID-6619
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: 0.32, 0.30
            Reporter: Keith Wall
            Assignee: Keith Wall


I am testing using Java broker 0.32 with client 0.16, and have run into
NPEs when I create consumers to queues in an initialization step to force
the queues to be created. I'm not able to reproduce this reliably, and it's
possible that this is triggered by some race condition, since we can have
multiple threads trying to register consumers to these new queues at the
same time. Any idea what is causing this? (We used to use the 0.16 broker
with the same initialization and didn't run into this.)

Stacktrace I've seen:
{noformat}
qpidbrkr`20150630085024.987`Exception processing command
java.lang.NullPointerException
        at
org.apache.qpid.server.queue.AbstractQueue.addConsumer(AbstractQueue.java:802)
        at
org.apache.qpid.server.queue.AbstractQueue.addConsumer(AbstractQueue.java:100)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.messageSubscribe(ServerSessionDelegate.java:327)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.messageSubscribe(ServerSessionDelegate.java:82)
        at
org.apache.qpid.transport.MessageSubscribe.dispatch(MessageSubscribe.java:110)
        at
org.apache.qpid.transport.SessionDelegate.command(SessionDelegate.java:55)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.command(ServerSessionDelegate.java:99)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.command(ServerSessionDelegate.java:82)
        at org.apache.qpid.transport.Method.delegate(Method.java:159)
        at org.apache.qpid.transport.Session.received(Session.java:596)
        at
org.apache.qpid.transport.Connection.dispatch(Connection.java:452)
        at
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
        at
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
        at
org.apache.qpid.transport.MethodDelegate.messageSubscribe(MethodDelegate.java:131)
        at
org.apache.qpid.transport.MessageSubscribe.dispatch(MessageSubscribe.java:110)
        at
org.apache.qpid.transport.ConnectionDelegate.command(ConnectionDelegate.java:54)
        at
org.apache.qpid.transport.ConnectionDelegate.command(ConnectionDelegate.java:40)
        at org.apache.qpid.transport.Method.delegate(Method.java:159)
        at
org.apache.qpid.transport.Connection.received(Connection.java:405)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection.access$001(ServerConnection.java:64)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection$1.run(ServerConnection.java:316)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection$1.run(ServerConnection.java:312)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:356)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection.received(ServerConnection.java:311)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection.received(ServerConnection.java:64)
        at
org.apache.qpid.transport.network.Assembler.emit(Assembler.java:97)
        at
org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:198)
        at
org.apache.qpid.transport.network.Assembler.frame(Assembler.java:131)
        at org.apache.qpid.transport.network.Frame.delegate(Frame.java:128)
        at
org.apache.qpid.transport.network.Assembler.received(Assembler.java:102)
        at
org.apache.qpid.transport.network.Assembler.received(Assembler.java:44)
        at
org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:199)
        at
org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:114)
        at
org.apache.qpid.server.protocol.v0_10.ProtocolEngine_0_10.received(ProtocolEngine_0_10.java:179)
        at
org.apache.qpid.server.protocol.v0_10.ProtocolEngine_0_10.received(ProtocolEngine_0_10.java:43)
        at
org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:153)
        at
org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:51)
        at
org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:161)
        at java.lang.Thread.run(Thread.java:745)
{noformat}

Another that I've seen that seems related:

{noformat}
qpidbrkr`20150630085024.954`Exception processing command
java.lang.NullPointerException
        at
org.apache.qpid.server.queue.AbstractQueue.getAvailableAttributes(AbstractQueue.java:635)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.queueQuery(ServerSessionDelegate.java:1533)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.queueQuery(ServerSessionDelegate.java:82)
        at org.apache.qpid.transport.QueueQuery.dispatch(QueueQuery.java:87)
        at
org.apache.qpid.transport.SessionDelegate.command(SessionDelegate.java:55)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.command(ServerSessionDelegate.java:99)
        at
org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.command(ServerSessionDelegate.java:82)
        at org.apache.qpid.transport.Method.delegate(Method.java:159)
        at org.apache.qpid.transport.Session.received(Session.java:596)
        at
org.apache.qpid.transport.Connection.dispatch(Connection.java:452)
        at
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
        at
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
        at
org.apache.qpid.transport.MethodDelegate.queueQuery(MethodDelegate.java:215)
        at org.apache.qpid.transport.QueueQuery.dispatch(QueueQuery.java:87)
        at
org.apache.qpid.transport.ConnectionDelegate.command(ConnectionDelegate.java:54)
        at
org.apache.qpid.transport.ConnectionDelegate.command(ConnectionDelegate.java:40)
        at org.apache.qpid.transport.Method.delegate(Method.java:159)
        at
org.apache.qpid.transport.Connection.received(Connection.java:405)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection.access$001(ServerConnection.java:64)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection$1.run(ServerConnection.java:316)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection$1.run(ServerConnection.java:312)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:356)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection.received(ServerConnection.java:311)
        at
org.apache.qpid.server.protocol.v0_10.ServerConnection.received(ServerConnection.java:64)
        at
org.apache.qpid.transport.network.Assembler.emit(Assembler.java:97)
        at
org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:198)
        at
org.apache.qpid.transport.network.Assembler.frame(Assembler.java:131)
        at org.apache.qpid.transport.network.Frame.delegate(Frame.java:128)
        at
org.apache.qpid.transport.network.Assembler.received(Assembler.java:102)
        at
org.apache.qpid.transport.network.Assembler.received(Assembler.java:44)
        at
org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:199)
        at
org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:114)
        at
org.apache.qpid.server.protocol.v0_10.ProtocolEngine_0_10.received(ProtocolEngine_0_10.java:179)
        at
org.apache.qpid.server.protocol.v0_10.ProtocolEngine_0_10.received(ProtocolEngine_0_10.java:43)
        at
org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:153)
        at
org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:51)
        at
org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:161)
        at java.lang.Thread.run(Thread.java:745)
{noformat}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to