mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-29 19:21:01 +00:00
as in main(), we use `stop_signal` to handle SIGINT and SIGTERM, so when scylla receives a SIGTERM, the corresponding signal handler could get called on any threads created by this program. so there is chance that the alien_runner thread could be choosen to run the signal handler setup by `main()`, but that signal handler assumes the availability of Seastar reactor. unfortunately, we don't have a Seastar reactor in alien thread. the same applies to Seastar's `thread_pool` which handles the slow and blocking POSIX calls typically used for interacting with files. so, in this change, we use the same approach as Seastar's `thread_pool::work()` -- just block all signals, so the alien threads used by wasm for compiling UDF won't handle the signals using the handlers planted by `main()`. Fixes #13228 Signed-off-by: Kefu Chai <kefu.chai@scylladb.com> Closes #13233