aio-libs / aio-libs/aiohttp

Force-closing of proxy connections is broken

未关闭
#4,953 0 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
Python
星标
16.5k
派生
2.4k
平均合并
17 小时 22 分钟
30 天内合并 PR
212

描述

🐞 **Describe the bug**

#3070 introduced force-closing of proxy connections, though the way it has been implemented (`proto.force_close()` call) doesn't work. So instead of making such hard-coded things I suggest removing this code and instead adding into documentation something like this: "If you're experiencing timeouts or other issues with proxy connections, use `force_close=True` to force close proxy connections after each request/response".

💡 **To Reproduce**

1. Spin up proxy
2. Set up Connector with high `keepalive_temeout`
2. Run `session.get()` call in while-loop with `asyncio.sleep()`
3. `watch -n 0.5 'netstat -napt |grep 8888'` where 8888 is your proxy port
4. See proxy connections not being closed

💡 **Expected behavior**

1. No confusing broken code in the library
2. Let the user decide to close or not proxy connections (just use `force_close`)

📋 **Your version of the aiohttp/yarl/multidict distributions**

```console
$ python -m pip show aiohttp
Name: aiohttp
Version: 3.6.1
...
```

📋 **Additional context**

client

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。