You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alan Conway (JIRA)" <ji...@apache.org> on 2012/09/10 22:08:09 UTC
[jira] [Resolved] (QPID-4262) C++ broker crashes due to priority
queue corruption
[ https://issues.apache.org/jira/browse/QPID-4262?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alan Conway resolved QPID-4262.
-------------------------------
Resolution: Fixed
Assignee: Alan Conway
Already fixed on trunk
> 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
> Assignee: Alan Conway
> 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: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org