Fixed failure to try next host after single-host connection timeout#7368
Fixed failure to try next host after single-host connection timeout#7368bdraco merged 19 commits intoaio-libs:masterfrom
Conversation
Also updated the default ``ClientTimeout`` params to include ``sock_connect`` so that this correct behavior happens by default.
|
|
It's failing on all Windows tests. The stderr output looks like there might be a problem with proxy.py, but not really sure. @webknjaz has more experience with the proxy stuff, maybe he has an idea. |
|
Might also be worth testing what specific change causes the test failure. Does the error happen if we change the default timeout, without the TimeoutError change? |
|
The error goes away if I temporarily revert the change to the default timeout. |
|
Yeah, I was wondering the other way. Maybe it's caused by the sock_connect timeout being reached, or maybe it's caused by the connection retry.. |
|
Whoops, sorry, I misread your earlier message. The same tests fail when the default timeout has |
|
OK, I guess it's an existing issue with sock_connect timeout then. |
|
Is there anything else you need from me on this PR? I wasn't really sure about the resolution (or lack thereof) of our last exchange. |
|
I don't think we can change the default if it's going to cause errors for all Windows users. So, we'll need to figure out a fix for that. I've not had a chance to look into it yet, but if you have time to figure that out, it'd help us get this done. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #7368 +/- ##
=======================================
Coverage 98.56% 98.57%
=======================================
Files 107 107
Lines 34995 35037 +42
Branches 4146 4150 +4
=======================================
+ Hits 34492 34536 +44
+ Misses 335 334 -1
+ Partials 168 167 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
|
@brettdh could you rebase the branch resolving the merge conflicts, to see if it'd pass? I think there were some fixes to the proxy tests last year. |
Still failing. I'm not sure it's related to the proxy anyway, I think this is just regular connections. |
|
Hmm, this seems to have changed. Windows now gives: While other test runs just hang and never complete the test. |
Locally, create_connection() is called once without a host argument. Not sure what has changed to cause the test to fail... |
|
I am mildly worried about the 30 second time out affecting users with poor quality links, examples user classes are aviation, and multi backhaul rural wireless links. Still 30 seconds is a long time , and the speed of light is not that disappointingly slow so I think it’s OK to backport |
|
Assuming the CI passes, I'll put this on some of my HA production systems for testing |
|
Sorry for the PR abandonment here, folks, but thanks very much for carrying it forward in my absence. 🙂 |
This comment was marked as outdated.
This comment was marked as outdated.
|
oh wait, baseline is a few PRs ahead... need to wait for master to catch up before profiling |
|
Seems fine on production as well |
Backport to 3.10: 💔 cherry-picking failed — conflicts found❌ Failed to cleanly apply 8a8913b on top of patchback/backports/3.10/8a8913be2eefca3d7504880a235664f5dc44f076/pr-7368 Backporting merged PR #7368 into master
🤖 @patchback |
Backport to 3.11: 💔 cherry-picking failed — conflicts found❌ Failed to cleanly apply 8a8913b on top of patchback/backports/3.11/8a8913be2eefca3d7504880a235664f5dc44f076/pr-7368 Backporting merged PR #7368 into master
🤖 @patchback |
…7368) Co-authored-by: Sam Bull <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: J. Nick Koston <[email protected]> (cherry picked from commit 8a8913b)
…7368) Co-authored-by: Sam Bull <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: J. Nick Koston <[email protected]> (cherry picked from commit 8a8913b)
…r single-host connection timeout (#9390) Co-authored-by: Sam Bull <[email protected]> Co-authored-by: pre-commit-ci[bot] Co-authored-by: J. Nick Koston <[email protected]> Co-authored-by: Brett Higgins <[email protected]>
…r single-host connection timeout (#9391) Co-authored-by: Sam Bull <[email protected]> Co-authored-by: pre-commit-ci[bot] Co-authored-by: J. Nick Koston <[email protected]> Co-authored-by: Brett Higgins <[email protected]>
|
Ran in production overnight, no obvious issues |



What do these changes do?
See subject. Also updated the default
ClientTimeoutparams to includesock_connectso that this correct behavior happens by default.Are there changes in behavior for the user?
Yes; the default socket connect timeout changes from
None(no timeout) to 30 seconds.Related issue number
Closes #7342.
Checklist
connector.py; passing after.CONTRIBUTORS.txtCHANGESfolder<issue_id>.<type>for example (588.bugfix)issue_idchange it to the pr id after creating the pr.feature: Signifying a new feature..bugfix: Signifying a bug fix..doc: Signifying a documentation improvement..removal: Signifying a deprecation or removal of public API..misc: A ticket has been closed, but it is not of interest to users.