-
Notifications
You must be signed in to change notification settings - Fork 890
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Attempting to install Rustup 1.24.2 hangs #2774
Comments
This also breaks on FreeBSD, which I've noticed when my CI suddenly started failing. The default |
hmm, a hang is unexpected: the threaded executor allocates a chunk from every slab size, and that will allow at least one io to proceed; the streaming ios also don't have busy waits that I remember, so it should always just loop until something completes; mkdirs to let something flush don't get accounted for against the budget (sssh), so it should always be possible for obviously that isn't happening, which means figuring out why not. you can workaround using single threaded mode: |
Adding the |
I can confirm this is reproducable on Linux, which means we (well I) stand a chance of diagnosing at least. It's a little odd that you say 64M isn't enough for Is the CI you use for FreeBSD compatible with Github ? I'd be prepared to add more CI options to our master branch build if it helps us catch this kind of problem in the future. |
We have a Cirrus CI setup on the Tokio github repository that we use for FreeBSD. |
References: rust-lang/rustup#2774 Signed-off-by: Fletcher Nichol <fnichol@nichol.ca>
References: rust-lang/rustup#2774 Signed-off-by: Fletcher Nichol <fnichol@nichol.ca>
rust-lang/rustup#2774 It is failing currently on: ``` info: installing component 'cargo' error: error: 'sysinfo not supported on this platform' ``` with 1.52.1
rust-lang/rustup#2774 It is failing currently on: ``` info: installing component 'cargo' error: error: 'sysinfo not supported on this platform' ``` with 1.52.1
rust-lang/rustup#2774 It is failing currently on: ``` info: installing component 'cargo' error: error: 'sysinfo not supported on this platform' ``` with 1.52.1
Since this breaking/blocking some stuff in the ecosystem would it be possible to just use 500MB for the time being as a workout? |
It's probably best to revert the regressing change for now -- the motivation was ostensibly a "hypothetical" memory fragmentation issue, whereas the hang is very real. |
@jclulow the fragmentation problem was very real on tier 1 platforms. I have what I think is a fix for this hang and I hope I'll get a beta out early next week with it. |
In rust-lang#2774 we have seen hangs during installation for some low tier platforms for whom the 32M default if sysinfo doesn't work causes problems. This change *exposes* that problem in a failing test. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
In incremental file processing we need to correctly account for the final chunk being released, otherwise we end up holding a chunk for the duration of the rest of the component for every incremental file in the tarball. This is what caused the issue surfaced in the previous commit, and thus this commit fixes rust-lang#2774 Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
A regression in rustup has broken that tool on FreeBSD. Set RUSTUP_IO_THREADS=1 as a workaround. rust-lang/rustup#2774
Yeah - to be clear, the problem was concrete, the hypothetical aspect was whether fragmentation was the cause. |
In incremental file processing we need to correctly account for the final chunk being released, otherwise we end up holding a chunk for the duration of the rest of the component for every incremental file in the tarball. This is what caused the issue surfaced in the previous commit, and thus this commit fixes rust-lang#2774 Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
In rust-lang#2774 we have seen hangs during installation for some low tier platforms for whom the 32M default if sysinfo doesn't work causes problems. This change *exposes* that problem in a failing test. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Can we get a release for this? It's breaking the CI for a lot of people still. |
@Thomasdezeeuw My intention is to prepare a beta release tonight, and hopefully to get it onto dev-static tomorrow. Keep an eye on the users forum for a call to test it. |
@kinnison How are things going? |
It seems to be on the internals forum? |
Yeah, I get the two mixed up, sorry :( |
In rust-lang#2774 we have seen hangs during installation for some low tier platforms for whom the 32M default if sysinfo doesn't work causes problems. This change *exposes* that problem in a failing test. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
In incremental file processing we need to correctly account for the final chunk being released, otherwise we end up holding a chunk for the duration of the rest of the component for every incremental file in the tarball. This is what caused the issue surfaced in the previous commit, and thus this commit fixes rust-lang#2774 Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Problem
After #2756 rustup will just hang if it's not able to determine the effective max ram of the system. The differences seem to be:
effective_limits::memory_limit
changed from 500MB to 32MB.rustup/src/dist/component/package.rs
Lines 402 to 409 in a1d5912
I encountered this running on an illumos machine.
Steps
On a machine not supported by
effective_limits
v0.5.2`:$ curl https://sh.rustup.rs -sSf | sh -s -- --profile minimal --default-toolchain nightly
Possible Solution(s)
--profile complete
).Notes
Output of
rustup --version
:1.24.2 (755e2b07e 2021-05-12)
The text was updated successfully, but these errors were encountered: