resources: exec: Avoid possible deadlock race
Some of the early code I wrote probably wouldn't pass my own reviews today. Here's one example of a rare deadlock that could sometimes occur when a Process/CheckApply caused a shutdown, but the bufio tried to send on a channel that nobody was going to read any more. Now we properly unblock that send with a context.
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
# TODO: should we return a different exit code if the resources fail?
|
||||
# TODO: should we be converged if one of the resources has permanently failed?
|
||||
$TIMEOUT "$MGMT" run --converged-timeout=15 --no-watch --no-pgp --tmp-prefix yaml --yaml exec-fail.yaml &
|
||||
|
||||
# there's no ^C sent... it should shutdown on its own
|
||||
pid=$!
|
||||
wait $pid # get exit status
|
||||
exit $?
|
||||
|
||||
Reference in New Issue
Block a user