classification
Title: Aiohttp fails when using intel ax200 wireless card
Type: behavior Stage:
Components: asyncio Versions: Python 3.8
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: JasperTecHK, asvetlov, ronaldoussoren, yselivanov
Priority: normal Keywords:

Created on 2020-12-20 08:16 by JasperTecHK, last changed 2020-12-28 10:07 by ronaldoussoren.

Files
File name Uploaded Description Edit
tetherror.txt JasperTecHK, 2020-12-20 08:16
Messages (2)
msg383425 - (view) Author: JasperTecHK (JasperTecHK) Date: 2020-12-20 08:16
Not sure what the protocol is for reporting the bug, but based on my, albeit limited, testing, on two separate machines running the same model of wireless card(but different cards), the Intel AX200 wireless card, aiohttp fails to finish scraping from webpages. The issue does not occur when both machines are using ethernet. The issue was tested on a AWS instance as well to try and eliminate the issue as well.

Further information is here, but I only got around to checking on a second machine a few minutes ago.

https://www.reddit.com/r/learnpython/comments/jiu452/asyncio_erroring_on_one_machine/

Things done to eliminate variables:
Tested on different network access methods (wlan0 vs eth0)
Tested on two different machines
Tested on two different OSes (Win 10, Ubuntu 20.04)

Interestingly, I did test with three different networks. First one was AWS, which worked as expected. The two others exhibited strange behavior.

Network A is a cable modem network from xfinity. We use our own router. When connected via wifi on either machine and run, the error as shown in my reddit thread above occurs, but if I run an ethernet line to it(though through a wifi-to-ethernet bridge on a rpi4 due to my room being unable to run a direct line of ethernet there, which is connected to the exact same wifi source as the two machines mentioned above), it will complete without errors.

Network B is my mobile tethering. Windows being Windows, it has a hissy fit and doesn't want to play nice. So I was only able to run a test on my Ubuntu machine. This time, I get an error that stated the server disconnected, but if I add in a wg vpn through a EC2 server, it completes, albeit slowly, but that's understandable.

Tldr: Network A was tested two ways.
wifi ap > Win10/ubuntu = fail. Error message is what is shown in the reddit thread.
wifi ap > rpi wlan-eth bridge > win10/ubuntu = pass.
Note: The vpn mentioned in Network B was also tested on Network A but did not make a difference.

Network B
mobile tethering > ubuntu = fail. Error is a Server Disconnect. Full error is attached.
mobile tethering > ubuntu + wg to EC2 = pass.

I understand that since this doesn't appear to be a widespread issue, not a lot of help would be available for this. But it would be nice to at least be able to figure out what the problem is.
msg383889 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2020-12-28 10:07
What's the script used, is it the script in the reddit thread? 

The reddit thread mentions a change to the script that might help:

     return [await r.json() for r in responses]

To:
     return await asyncio.gather(*(r.json() for r in responses))

Does that remove the error?
History
Date User Action Args
2020-12-28 10:07:01ronaldoussorensetnosy: + ronaldoussoren
messages: + msg383889
2020-12-20 08:17:06JasperTecHKsettype: behavior
2020-12-20 08:16:56JasperTecHKcreate