Skip to content

Spawn signal handler out of loop into background task #579

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

thomasywang
Copy link
Contributor

Summary:
This fixes test_allocator_stuck_job.

Previously we had a problem where if we branched into any of the message handler branches where we called std::process::exit() the loop would break and we would not be able to receive any signals. This would result in us being unable to kill the process with SIGTERM which is why the broken test would hang. Spawning the signal handler in a background task ensures that even once the loop breaks we can still listen for signals and handle them

Differential Revision: D78516491

Summary:
This fixes `test_allocator_stuck_job`.

Previously we had a problem where if we branched into any of the message handler branches where we called `std::process::exit()` the loop would break and we would not be able to receive any signals. This would result in us being unable to kill the process with SIGTERM which is why the broken test would hang. Spawning the signal handler in a background task ensures that even once the loop breaks we can still listen for signals and handle them

Differential Revision: D78516491
@meta-cla meta-cla bot added the CLA Signed This label is managed by the Meta Open Source bot. label Jul 18, 2025
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D78516491

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Meta Open Source bot. fb-exported
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants