pub fn break_query_cycles<I: Clone + Debug>(
query_map: QueryMap<I>,
registry: &Registry,
)
Expand description
Detects query cycles by using depth first search over all active query jobs. If a query cycle is found it will break the cycle by finding an edge which uses a query latch and then resuming that waiter. There may be multiple cycles involved in a deadlock, so this searches all active queries for cycles before finally resuming all the waiters at once.