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
Handle blocked I/O of exec'd processes, and remove flaky TestExecWindowsOpenHandles #39383
Conversation
addresses containerd/containerd#3286 docker exec hang if earlier docker exec left a zombie process @crosbymichael does this also relate to;
Should we have a test-case for this? (not sure if it's easy to test) |
Haven't seen this one before; https://jenkins.dockerproject.org/job/Docker-PRs-WoW-RS1/25656/console
I'll kick CI for RS1 to see if it was just flaky |
I read through that test and its depending on the "bad" functionality, forking off the sleeps into the background and the actually cmd.exe is exiting. I think it's safe for this test to be removed with this change as well as the test is horribly racy and depending on how many seconds the sleeps wait until they exit, its bad! |
This is the second part to containerd/containerd#3361 and will help process delete not block forever when the process exists but the I/O was inherited by a subprocess that lives on. Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Codecov Report
@@ Coverage Diff @@
## master #39383 +/- ##
=========================================
Coverage ? 37.34%
=========================================
Files ? 609
Lines ? 45269
Branches ? 0
=========================================
Hits ? 16905
Misses ? 26074
Partials ? 2290 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SGTM
@kolyshkin @dmcgowan PTAL
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I/O waiters seems like a good candidate for metrics as well. |
fixes #39326
This is the second part to
containerd/containerd#3361 and will help process
delete not block forever when the process exists but the I/O was
inherited by a subprocess that lives on.
Signed-off-by: Michael Crosby crosbymichael@gmail.com