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

Chuck Rolke resolved QPID-4672.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 0.22

Fixed and back ported to 0.22
                
> C++ Broker deadlock detaching XmlExchange sessions
> --------------------------------------------------
>
>                 Key: QPID-4672
>                 URL: https://issues.apache.org/jira/browse/QPID-4672
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: 0.20
>         Environment: C++ Broker, autotools build, make check or 
> run_federation_tests
>            Reporter: Chuck Rolke
>            Priority: Critical
>             Fix For: 0.22
>
>
> Self test federation.FederationTests.test_dynamic_topic locks up. Pstack 
> shows three threads with the same trace:
> #0  pthread_rwlock_wrlock ()
> #1  qpid::broker::XmlExchange::unbind()
> #2  qpid::broker::XmlExchange::fedUnbind()
> #3  qpid::broker::XmlExchange::bind()
> #4  qpid::broker::Queue::bind()
> #5  qpid::broker::Broker::bind()
> #6  qpid::broker::SemanticState::unbindSessionBindings()
> #7  qpid::broker::SemanticState::closed()
> #8  qpid::broker::SessionState::~SessionState()
> #9  qpid::broker::SessionState::~SessionState()
> #10 qpid::broker::SessionHandler::handleDetach()
> #11 qpid::amqp_0_10::SessionHandler::detach()
> The lock occurs because there are two simultaneous session detach calls going 
> on. Each takes out the Rlock and then tries to take out the Wlock. Neither 
> will get the Wlock until everyone else releases their Rlock. Subsequent 
> detach calls fall into the same catch as they get the Rlock but not the Wlock.
> This condition is present in both the XmlExchange and DirectExchange. I'll 
> have a patch for review shortly.

--
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-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to