Inconsistent Slow downloads from nodejs.org
URL:
https://nodejs.org/dist/v20.16.0/node-v20.16.0-linux-x64.tar.gz
Browser Name:
curl
Browser Version:
n/a -multiple
Operating System:
Mac, Linux
How to reproduce the issue:
I am not sure if nodejs/build is the right place to file, so feel free to move
When trying to download a nodejs version, we usually are very fast. We see similar speeds from our CI servers, local, etc across multiple networks
Example:
> curl https://nodejs.org/dist/v20.16.0/node-v20.16.0-linux-x64.tar.gz --output a.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 44.5M 100 44.5M 0 0 10.7M 0 0:00:04 0:00:04 --:--:-- 10.7M
However, at random times, we get super slow. I can rerun this download 10 times, and 3 will fail with this slowness
it's not a local network issue, as this is happening across multiple networks and people, and appears worse over the last 3 days.
Any insight or additional info I can provide support for?
Example - before I killed it 6 minutes in - 152K download:
> curl https://nodejs.org/dist/v20.16.0/node-v20.16.0-linux-x64.tar.gz --output a.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
87 44.5M 87 38.8M 0 0 102k 0 0:07:27 0:06:30 0:00:57 152k^C
Realized that nodejs.org might be better place for this than nodejs/build - sorry for double post. https://github.com/nodejs/build/issues/3853 - I know when there were 500 errors at Fastly, the fix was somewhere in the middle, so not sure which team this is.
it's still slow for you ??? This may be due to the fact that it is at the time of release.
Yep, still happening. Over the past few days many people reporting this same issue
Different example:
Yes, I see slowness and cancellations both now on certain downloads. as per @matthiaz 's view. Something got worse over the last week, IMO
I'm also seeing slowness and timeouts trying to download https://nodejs.org/dist/v20.6.1/node-v20.6.1-darwin-arm64.tar.gz, both in my browser and with Mise.
12:15 gitbook on main
><((x> mise install [email protected] --verbose
[DEBUG] ARGS: /opt/homebrew/bin/mise install [email protected] --verbose
[DEBUG] Config {
Config Files: [
"~/src/opt/gitbook/.nvmrc",
"~/.config/mise/config.toml",
],
}
[DEBUG] ToolRequestSet.build(28.5µs): ToolRequestSet: [email protected] ruby@system
[DEBUG] install_versions: [email protected]
downloading node-v20.6.1-darwin-arm64.tar.gz
[DEBUG] GET Downloading https://nodejs.org/dist/v20.6.1/node-v20.6.1-darwin-arm64.tar.gz to ~/.local/share/mise/downloads/node/20.6.1/node-v20.6.1-darwin-arm64.tar.gz
[DEBUG] GET https://nodejs.org/dist/v20.6.1/node-v20.6.1-darwin-arm64.tar.gz
[DEBUG] starting new connection: https://nodejs.org/
[DEBUG] GET https://nodejs.org/dist/v20.6.1/node-v20.6.1-darwin-arm64.tar.gz 200 OK
Error:
0: error decoding response body
1: request or response body error
2: operation timed out
Location:
src/http.rs:130
Version:
2024.8.5 macos-arm64 (2024-08-03)
Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.
FYI, I was dealing with slow/failed downloads using nodenv install 20.16.0 since 11AM EDT today. I retried nodenv a few times, then tried in my browser, and it was still slow/failing. A download was able to finish around 11:55AM EDT - it took about 10 mins
I want to download the link https://nodejs.org/dist/v20.16.0/node-v20.16.0-linux-x64.tar.gz , but I found it's not working... opening https://nodejs.org, it's no response. why?
This is most likely due to the origin server being overloaded due to a cache purge done by a release (as @AugustinMauroy pointed out). We're still working on better infra for downloads (nodejs/build#3461), but in the meantime, the fix is to just try it again until the download succeeds unfortunately
opening https://nodejs.org/, it's no response. why?
That strange because nodejs.org is deployed on vercel and it's shouldn't do that
opening nodejs.org, it's no response. why?
That strange because nodejs.org is deployed on vercel and it's shouldn't do that
I'm not sure if they meant nodejs.org or nodejs.org/dist
Anyhow, download issues are outside the scope of this repository. I'm moving this issue to nodejs/build.
Another example that ends falling back to source downloading...
[2024-09-11T12:10:48+00:00] W: Binary download from https://nodejs.org/dist/v18.17.1/node-v18.17.1-linux-x64.tar.xz failed, trying source.
[2024-09-11T12:10:48+00:00] W: grep: /app/.nvm/.cache/bin/node-v18.17.1-linux-x64/node-v18.17.1-linux-x64.tar.xz: No such file or directory
[2024-09-11T12:10:48+00:00] W: Provided file to checksum does not exist.
[2024-09-11T12:10:48+00:00] W: Binary download failed, trying source.
[2024-09-11T12:10:48+00:00] Detected that you have 8 CPU core(s)
[2024-09-11T12:10:48+00:00] Running with 7 threads to speed up the build
[2024-09-11T12:10:48+00:00] W: Downloading https://nodejs.org/dist/v18.17.1/node-v18.17.1.tar.xz...
[2024-09-11T12:13:17+00:00] W: #=#=# ```
Any idea why nodejs.org downloads continue to fail intermittently?
Any idea why nodejs.org downloads continue to fail intermittently?
We're still working on the new infra re https://github.com/nodejs/build/issues/3898#issuecomment-2339873518
I ran into this issue today and would appreciate a fix as soon as possible.
# curl --output node-v20.11.1-linux-x64.tar.xz https://nodejs.org/dist/v20.11.1/node-v20.11.1-linux-x64.tar.xz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:03:35 --:--:-- 0
curl: (28) Failed to connect to nodejs.org port 443: Connection timed out
I ran into this issue today and would appreciate a fix as soon as possible.
# curl --output node-v20.11.1-linux-x64.tar.xz https://nodejs.org/dist/v20.11.1/node-v20.11.1-linux-x64.tar.xz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- 0:03:35 --:--:-- 0 curl: (28) Failed to connect to nodejs.org port 443: Connection timed out
https://status.nodejs.org
This should be fixed since we fully migrated the binaries to the new infra.