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
Fix Worker external TERM signalling #1952
Conversation
External Worker TERM signals 'enter' on the forked side of the worker, but need to be communicated to other side
Travis failed on XCode11 / Ruby 2.5.6 during 'bundle install', didn't even get to the compile step... Actions Tests (all passing): https://github.com/MSP-Greg/puma/runs/214899119 |
Test? Sent with GitHawk |
Lastly, and a separate issue, I think test 'retry' should be removed, but more work is needed in the test files to make them more consistent. Same for parallel, which should be used... |
Since I've occasionally not provided clear descriptions... While working on #1908, the main concern was that Then, while working on getting Finally, this code only affects frozen/stuck workers that are externally |
I disagree Greg! You provide very complete descriptions of your thoughts, and it is very useful. Sent with GitHawk |
Nate, Thanks. Really.
Puma is supposed to keep smoothly running regardless of the countless ways that code it's connected to can crash and burn. That can make it difficult for contributors/maintainers, and makes it very important that tests are not giving 'false positive' results... JFYI, when running tests parallel, Minitest's time details may be incorrect or even missing. Retry may be affecting that. Ideally, we can get the tests to the point where they don't need retry... |
Closing to look at #1956 in its entirety instead |
External Worker
TERM
signals 'enter' on the forked side of the worker, but need to be communicated to other side, especially when an externallyTERM
'd worker is 'stuck'.Without doing so, a stuck worker will never be
KILL
'ed by Puma, regardless of whether the timers run out...