Fix some spurious process manager test failures #2452
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This provides a fix for #2297. I was able to replicate two spurious
failures. The first was KillError thrown by _kill_child, I've changed
the code so KillError is not thrown as there is really no reasonable
recovery that can be performed.
The second spurious error I saw was in _close where @waitpid would
return an error because the _child_pid was -1. This occurs in
packages/process/_test.pony::TestFileExecCapabilityIsRequired and
::_TestNonExecutablePathResultsInExecveError which are designed to fail
and _child_pid is always -1. This causes a failure to be always be
sent asynchronously and sometimes is actually gets reported.
failure is reported