chore: prefer to panic instead of os.Exit #15285
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.
Description
In a few call sites that used os.Exit, prefer to panic, in order to allow any deferred cleanup to happen before process termination.
Moreover, a panic in a test is a clear failure, but an os.Exit(1) that occurs during a test causes an obscure test failure that is difficult to track down.
Also move server/util.TrapSignal to an unexported function near its only use, to discourage one more outstanding use of os.Exit.
Author Checklist
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.
I have...
provided a link to the relevant issue or specificationreviewed "Files changed" and left comments if necessaryReviewers Checklist
All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.
I have...