Skip to content
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

Fix hang on broken stderr. #9201

Merged
merged 1 commit into from
Feb 24, 2021
Merged

Conversation

ehuss
Copy link
Contributor

@ehuss ehuss commented Feb 24, 2021

If stderr is closed and cargo tries to print a status message such as "Compiling", cargo can get into a hung state. This is because the DrainState::run function would insert the job into the active queue, and then return an error without starting the job. Since the job isn't started, there is nothing to remove it from the active queue, and thus cargo hangs forever waiting for it to finish.

The solution is to move the call to note_working_on earlier before the job is placed into the active queue.

This addresses the issue noted in #8714 (comment).

@rust-highfive
Copy link

r? @Eh2406

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 24, 2021
@Eh2406
Copy link
Contributor

Eh2406 commented Feb 24, 2021

@bors r+

@bors
Copy link
Collaborator

bors commented Feb 24, 2021

📌 Commit bb7ec2f has been approved by Eh2406

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 24, 2021
@bors
Copy link
Collaborator

bors commented Feb 24, 2021

⌛ Testing commit bb7ec2f with merge e370c83...

@bors
Copy link
Collaborator

bors commented Feb 24, 2021

☀️ Test successful - checks-actions
Approved by: Eh2406
Pushing e370c83 to master...

@bors bors merged commit e370c83 into rust-lang:master Feb 24, 2021
Dylan-DPC-zz pushed a commit to Dylan-DPC-zz/rust that referenced this pull request Feb 27, 2021
Update cargo

11 commits in bf5a5d5e5d3ae842a63bfce6d070dfd438cf6070..572e201536dc2e4920346e28037b63c0f4d88b3c
2021-02-18 15:49:14 +0000 to 2021-02-24 16:51:20 +0000
- Pass the error message format to rustdoc (rust-lang/cargo#9128)
- Fix test target_in_environment_contains_lower_case (rust-lang/cargo#9203)
- Fix hang on broken stderr. (rust-lang/cargo#9201)
- Make it more clear which module is being tested when running cargo test (rust-lang/cargo#9195)
- Updates to edition handling. (rust-lang/cargo#9184)
- Add --cfg and --rustc-cfg flags to output compiler configuration (rust-lang/cargo#9002)
- Run rustdoc doctests relative to the workspace (rust-lang/cargo#9105)
- Add support for [env] section in .cargo/config.toml (rust-lang/cargo#9175)
- Add schema field and `features2` to the index. (rust-lang/cargo#9161)
- Document the default location where cargo install emitting build artifacts (rust-lang/cargo#9189)
- Do not exit prematurely if anything failed installing. (rust-lang/cargo#9185)
link2xt added a commit to deltachat/deltachat-core-rust that referenced this pull request May 23, 2021
Building aarch64 wheels under qemu takes a long time.
rust 1.52.1 includes fix for cargo that may result in
compilation being stuck: rust-lang/cargo#9201
@ehuss ehuss added this to the 1.52.0 milestone Feb 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants