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

Ken Giusti updated PROTON-2673:
-------------------------------
    Description: 
If pn_raw_connection_wake() is called on a raw connection that is attempting to 
connect  no further proactor events are generated and the proactor hangs.

Important observations:
 * This only occurs {_}if there is no server available at the target address 
for the connection{_}. If a server is present then the PN_RAW_CONNECTION_WAKE 
and PN_RAW_CONNECTION_CONNECTED events arrive properly (in that order).
 * The host address is "localhost" - using "127.0.0.1" or "::1" instead works. 
localhost on my machine maps to both "127.0.0.1" and "::1"
 * Extra bonus: if you move the call to pn_raw_connection_wake() to _before_ 
the call to pn_proactor_raw_connect() a crash occurs

See attached reproducer.

  was:
If pn_raw_connection_wake() is called on a raw connection that is attempting to 
connect  no further proactor events are generated and the proactor hangs.

Important observations:
 * This only occurs {_}if there is no server available at the target address 
for the connection{_}. If a server is present then the PN_RAW_CONNECTION_WAKE 
and PN_RAW_CONNECTION_CONNECTED events arrive properly (in that order).
 * The host address is "localhost" - using "127.0.0.1" works. localhost on my 
machine maps to both "127.0.0.1" and "::1"
 * Extra bonus: if you move the call to pn_raw_connection_wake() to _before_ 
the call to pn_proactor_raw_connect() a crash occurs

See attached reproducer.


> Proactor hangs if pn_raw_connection_wake() is called with outstanding 
> connection attempt
> ----------------------------------------------------------------------------------------
>
>                 Key: PROTON-2673
>                 URL: https://issues.apache.org/jira/browse/PROTON-2673
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-c
>    Affects Versions: proton-c-0.38.0, proton-c-0.39.0
>            Reporter: Ken Giusti
>            Assignee: Andrew Stitcher
>            Priority: Major
>         Attachments: raw_wake.c
>
>
> If pn_raw_connection_wake() is called on a raw connection that is attempting 
> to connect  no further proactor events are generated and the proactor hangs.
> Important observations:
>  * This only occurs {_}if there is no server available at the target address 
> for the connection{_}. If a server is present then the PN_RAW_CONNECTION_WAKE 
> and PN_RAW_CONNECTION_CONNECTED events arrive properly (in that order).
>  * The host address is "localhost" - using "127.0.0.1" or "::1" instead 
> works. localhost on my machine maps to both "127.0.0.1" and "::1"
>  * Extra bonus: if you move the call to pn_raw_connection_wake() to _before_ 
> the call to pn_proactor_raw_connect() a crash occurs
> See attached reproducer.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to