rust/compiler/rustc_query_system/src/query
许杰友 Jieyou Xu (Joe) 927c11fcb7
Rollup merge of #137731 - SparrowLii:waiter, r=nnethercote
Resume one waiter at once in deadlock handler

When multiple query loop errors occur in the code, only one waiter should be resumed at a time to avoid waking up multiple waiters at the same time and causing deadlock due to thread grabbing.

This fixes the UI failures in #132051

cc `@Zoxc` `@cjgillot` `@nnethercote` `@bjorn3` `@Kobzol`

Zulip discussion [here](https://rust-lang.zulipchat.com/#narrow/channel/187679-t-compiler.2Fwg-parallel-rustc/topic/Deadlocks.20and.20Rayon)

Edit: We can't reproduce these bugs with the existing test suits, so we keep them until we merge #132051
UPDATES #129912
UPDATES #120757
UPDATES #129911
2025-03-05 21:46:45 +08:00
..
caches.rs Remove some unnecessary aliases from rustc_data_structures::sync 2025-03-03 20:20:24 +11:00
config.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
job.rs resume one waiter at a call 2025-03-05 11:24:58 +08:00
mod.rs Move hashes from rustc_data_structure to rustc_hashes so they can be shared with rust-analyzer 2025-02-16 16:18:30 -05:00
plumbing.rs Notes on types/traits used for in-memory query caching 2025-02-03 22:36:01 +11:00
README.md mv compiler to compiler/ 2020-08-30 18:45:07 +03:00

For more information about how the query system works, see the rustc dev guide.