Open ldeffenb opened 2 years ago
Note that both of the speed test URLs respond with valid-looking data from my network:
https://www.speedtest.net/speedtest-config.php https://www.speedtest.net/speedtest-servers.php
I have tracked it down to the fact that the Unmarshal call is returning zero servers on the second invocation, first being at startup which works and second being at the top (minute=0) of the next hour. Looking at the raw XML body when the next hour strikes.
Nailed it! As I expected, although not really expected until things ramp up, it's not a good idea to have code that time-synchronizes access to some external resource. Given that speedtest is invoked within one second of the top of the hour (minute=0), this is not surprising:
GetServers: Got <html><head><title>Too Many Requests</title></head><body><h1>429 Error - Too Many Requests</h1><p>Our systems are overloaded. Please retry your request at a different time.</p></body></html>
GetServers: Unmarshal gave 0 servers
No wonder the Unmarshal came up with zero servers for the subsequent speed tests!
When first running the nectar client, it successfully tests my network bandwidth. However, the retest that is supposed to occur at the top of every hour (minute==0) fails with the following logs:
This results in the originally determined network bandwidth being used in every update which I'm pretty sure is not the intent.