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

Keith Wall resolved QPID-3823.
------------------------------

    Resolution: Fixed

No comments from me, patch applied.
                
> 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: Keith Wall
>             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]

Reply via email to