Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

http in multi_socket mode is not working for high latency connections since 7.55.0 #1804

Closed
ngg opened this issue Aug 18, 2017 · 2 comments
Closed

Comments

@ngg
Copy link
Contributor

ngg commented Aug 18, 2017

This issue is reproducible with the hiperfifo, evhiperfifo and multi-uv examples.

With the multi-uv example, start:
multi-uv https://curltest.szalonna.org/testfiles/128K
Or with the hiperfifo example, start:
hiperfifo &; sleep 1; echo https://curltest.szalonna.org/testfiles/128K > hiper.fifo

With version 7.54.1 and earlier this downloaded the file successfully.
From 7.55.0 the downloads are interrupted or hanging depending on which example you use.
This happens if the latency is around or higher than 200ms.
The curltest.szalonna.org test server has artificially high latency for testing purposes.
Git bisect showed that #1547 caused the regression.

I have only tested it on Linux, but I think other operating systems are affected as well.

I have a one-line patch to solve this, I will create a pull request.

@ngg
Copy link
Contributor Author

ngg commented Aug 18, 2017

I'm not quite sure why this patch fixes the issue, but I could trace it to that line and conn->connectstate was NULL there. The current operation exited but since no timeouts nor socket polls are left, curl is never called again.

@ngg
Copy link
Contributor Author

ngg commented Aug 18, 2017

I've forgot to mention that https is not required for this, the same links reproduce this with http as well.

@bagder bagder closed this as completed in 74dac34 Aug 18, 2017
@lock lock bot locked as resolved and limited conversation to collaborators May 6, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

1 participant