#9986 WIP: propagate termination signals to plugin subprocesses
Pull request opened by
edgarrmondragon on <!date^1777683216^{date_short}|2026-05-02T00:53:36Z>
Description
Checklist
• I have read the
contribution guide
Was generative AI tooling used to co-author this PR?
• Yes (please specify the tool below)
Related Issues
• Closes
#9981
Summary by Sourcery
Propagate termination signals to job and plugin subprocess execution so SIGTERM and SIGINT are handled consistently and jobs exit with the correct status.
Bug Fixes:
• Ensure SIGTERM cancels running jobs and exits with the conventional 143 status instead of relying on a synchronous signal handler.
• Avoid performing duplicate or inappropriate graceful shutdown when cancellations are caused by SIGTERM or user SIGINT, relying on subprocess signal delivery instead.
Enhancements:
• Introduce asynchronous SIGTERM handling integrated with the event loop and job heartbeat lifecycle.
• Track whether SIGINT was received during job execution so downstream cancellation handling can distinguish user interrupts from timeouts.
• Ensure extract-load blocks perform a graceful terminate on SIGTERM-triggered cancellation during startup.
meltano/meltano