[
https://issues.apache.org/jira/browse/QPID-3823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrew MacBean updated QPID-3823:
---------------------------------
Attachment: 0001-QPID-3823-ServerSession-unblock-AMQQueue-can-cause-N.patch
> ServerSession unblock(AMQQueue) can cause NPE when trying to remove a queue
> from _blockingQueues Map that is not present
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: QPID-3823
> URL: https://issues.apache.org/jira/browse/QPID-3823
> Project: Qpid
> Issue Type: Bug
> Components: Java Broker
> Affects Versions: 0.15
> Reporter: Andrew MacBean
> Assignee: Andrew MacBean
> Fix For: 0.15
>
> Attachments:
> 0001-QPID-3823-ServerSession-unblock-AMQQueue-can-cause-N.patch
>
>
> When running multiple producers and a single consumer on a queue, the unblock
> code NPEs when trying to remove a queue entry, from the _blockingQueues Map,
> that is not present. This is due to the Map being given a Boolean keyed by
> Queue and in the case above the Map.remove() method returns null.
> The data structures used to hold the blocking queues and sessions used in
> SimpleAMQQueue and the AMQSessionModel implementations (ServerSession &
> AMQCHannel) should be changed from ConcurrentMaps to Sets - specifically
> ConcurrentSkipListSet. This will prevent the NPE from being possible.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]