[
https://issues.apache.org/jira/browse/QPID-4262?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jason Dillaman updated QPID-4262:
---------------------------------
Attachment: qpid-4262.patch
Proposed patch to address issue
> C++ broker crashes due to priority queue corruption
> ---------------------------------------------------
>
> Key: QPID-4262
> URL: https://issues.apache.org/jira/browse/QPID-4262
> Project: Qpid
> Issue Type: Bug
> Components: C++ Broker
> Affects Versions: 0.18
> Reporter: Jason Dillaman
> Attachments: qpid-4262.patch
>
>
> When re-routing messages from a priority queue (via the queue's QMF purge
> method) back to the same queue, the PriorityQueue's "messages" deque will
> become out-of-sync with the state of its "fifo" MessageDeque. Since the
> "messages" deque contains pointers into the "fifo" deque, this will lead to a
> broker crash as the pointers are no longer valid.
> This issue occurs because "MessageDequeue::index()" will return index zero
> for messages that are sequenced prior the start of the deque.
> Steps to reproduce:
> (1) Create a priority queue
> (2) Add several messages to the queue
> (3) Issue a purge on the queue such that the messages return to the same queue
> (4) Observe that the "messages" collection within the queue's PriorityQueue
> collection does not match its corresponding "fifo" collection.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]