You are viewing a plain text version of this content. The canonical link for it is here.
Posted to proton@qpid.apache.org by "Ted Ross (JIRA)" <ji...@apache.org> on 2014/12/04 17:01:12 UTC

[jira] [Created] (PROTON-764) Driver is multi-thread-unsafe when connections are closed uncleanly

Ted Ross created PROTON-764:
-------------------------------

             Summary: Driver is multi-thread-unsafe when connections are closed uncleanly
                 Key: PROTON-764
                 URL: https://issues.apache.org/jira/browse/PROTON-764
             Project: Qpid Proton
          Issue Type: Bug
          Components: proton-c
    Affects Versions: 0.8
            Reporter: Ted Ross
            Priority: Blocker
             Fix For: 0.9


In a multi-threaded environment (Qpid Dispatch), lost connections can result in multiple calls to pn_connector_close for a given connector.  This results in driver->close_count never returning to zero and the poll loop forever running with a zero timeout.

The reason for this is that pn_driver_wait_3 calls pn_connector_close when it sees an error, even if that connector is currently being processed by another thread.  I think that pn_driver_wait_3 should only flag the connector as failed so the user can close it in the proper thread.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)