diff options
| author | Alan Conway <aconway@apache.org> | 2012-07-17 17:39:54 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2012-07-17 17:39:54 +0000 |
| commit | 215cf97f02ea033fd2cf1a73040cd3f5ec576e49 (patch) | |
| tree | 51a0d6255a981b4f0db6b52132265dc511882d38 /qpid/java | |
| parent | 0723961495e6b68f275873e93cedee33f8f1430c (diff) | |
| download | qpid-python-215cf97f02ea033fd2cf1a73040cd3f5ec576e49.tar.gz | |
QPID-4144 HA broker deadlocks on broker::QueueRegistry lock and ha::Primary lock
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.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1362584 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
0 files changed, 0 insertions, 0 deletions
