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/07/17 19:35:34 UTC
[jira] [Updated] (QPID-4144) HA broker deadlocks on
broeker::QueueRegistry lock and ha::Primary lock
[ https://issues.apache.org/jira/browse/QPID-4144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alan Conway updated QPID-4144:
------------------------------
Attachment: thread-dump.txt
Thread dump of the deadlocked process.
> HA broker deadlocks on broeker::QueueRegistry lock and ha::Primary lock
> -----------------------------------------------------------------------
>
> Key: QPID-4144
> URL: https://issues.apache.org/jira/browse/QPID-4144
> Project: Qpid
> Issue Type: Bug
> Components: C++ Clustering
> Affects Versions: 0.17
> Reporter: Alan Conway
> Assignee: Alan Conway
> Fix For: 0.18
>
> Attachments: thread-dump.txt
>
>
> Running tests repeatedly, the broker deadlocked with the attached stack trace.
> The problem call sequences are:
> 1. QueueRegistry::destroy takes QueuerRegistry lock > ConfigurationObserver::queueDestroy > ha::Primary::queueDestroy takes Primary lock.
> 2. ConnectionObserver::opened cals Primary::opened lock> RemoteBackup>getQueues().eachQueue
> This patch breaks the deadlock at both ends: QueueRegistry no longer holds the lock across the observer call and Primary does not hold the lock across eachQueue.
--
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
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org