Marcel Meulemans created PROTON-644:
---------------------------------------

             Summary: Posix driver swallows connect errors.
                 Key: PROTON-644
                 URL: https://issues.apache.org/jira/browse/PROTON-644
             Project: Qpid Proton
          Issue Type: Bug
          Components: proton-c
    Affects Versions: 0.8
            Reporter: Marcel Meulemans
            Priority: Minor


The majority of errors that can occur on a call to connect(...) (timeout, host 
unreachable, network unavailable, etc) are hidden by the io layer. The reason 
being that the socket is set to non-blocking prior to the call to connect and 
the result of the connect is never checked.

A possible fix can be found here: 
https://github.com/marcelmeulemans/qpid-proton/commit/d62cc2f482d083236512dd2a6ab93f9c85decf37

This fix make the pn_connect function block by using select to check the result 
of connect with a timeout (currently 10 sec). Another option would be to be to 
set the socket to non blocking after the connect, but this can can cause 
connect to block for minutes.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to