<div dir="ltr">I need to do more characterizing before I come up with a minimal repo case.  Later this week.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 21, 2017 at 5:27 PM, Andy Green <span dir="ltr"><<a href="mailto:andy@warmcat.com" target="_blank">andy@warmcat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
<br>
On February 22, 2017 10:16:36 AM GMT+09:00, Joel Winarske <<a href="mailto:joel.winarske@gmail.com">joel.winarske@gmail.com</a>> wrote:<br>
>Well I'm calling it a delay, but I suspect it's just the expected<br>
>behavior<br>
>of the "service loop".  Given http client is not a single synchronous<br>
>function call.<br>
<br>
</span>It depends what kind of delay, but name resolution takes network roundtrips as does establishing the tcp connection.  But those should be no different than say wget doing the same thing.<br>
<span class=""><br>
>The scenario is loading the "site".  Which is around 275 server<br>
>requests on<br>
>initial load.  Of which only the second occurring Method: POST<br>
>'/rest/send'<br>
>is "refused"/or "pending".  I never see the incoming request in the<br>
>log.<br>
<br>
</span>Hm if this is lws it sounds like keepalive pipelining probs.<br>
<span class=""><br>
>Chrome doesn't always report the transaction "refused".  Most of the<br>
>time<br>
<br>
</span>Mmm I dunno that is related at all to the canonical "Connection Refused" at tcp level.  It seems to feel an individual transaction was not processed.<br>
<span class=""><br>
>it says "pending", which in Wireshark - the server doesn't respond.  So<br>
>the<br>
>pattern is every other POST '/rest/send', of which calls the http<br>
>client<br>
>code.<br>
<br>
</span>If we ignore "Connection Refused", we know from your earlier log chrome is pipelining because it's logged when it handles the transaction complete.<br>
<br>
Personally I never tried two back-back POSTs pipelined, and this encompasses the behaviour of your POST callbacks as well as lws itself.<br>
<br>
Is there a way I can reproduce it without a big effort?<br>
<span class="HOEnZb"><font color="#888888"><br>
-Andy<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
><br>
>On Tue, Feb 21, 2017 at 3:00 PM, Andy Green <<a href="mailto:andy@warmcat.com">andy@warmcat.com</a>> wrote:<br>
><br>
>><br>
>><br>
>> On February 22, 2017 7:46:12 AM GMT+09:00, Joel Winarske <<br>
>> <a href="mailto:joel.winarske@gmail.com">joel.winarske@gmail.com</a>> wrote:<br>
>> >lwsws on Windows, so libuv.<br>
>><br>
>> Right.<br>
>><br>
>> >Timing wise the refused request happens during<br>
>> >lws_ssl_client_connect2().<br>
>><br>
>> If we believe it really is a "connection refused" specifically, and<br>
>not<br>
>> something else that falls into the general category of "my connection<br>
>was<br>
>> not accepted", it's more interesting to understand the state of the<br>
>server<br>
>> part at that time.  We are spamming it with connections?  Something<br>
>else?<br>
>><br>
>> >Also how do I get rid of the delay between<br>
>lws_client_connect_via_info<br>
>> >and<br>
>> >lws_ssl_client_connect2()?<br>
>><br>
>> ... what delay?<br>
>><br>
>> -Andy<br>
>><br>
>><br>
>><br>
</div></div></blockquote></div><br></div>