* at_exit ignored on worker processes @ 2022-04-11 19:02 pudiva chip líquida 2022-04-11 20:42 ` Eric Wong 0 siblings, 1 reply; 3+ messages in thread From: pudiva chip líquida @ 2022-04-11 19:02 UTC (permalink / raw) To: unicorn-public Dear unicorns, I was trying to register some code with `at_exit`, so that it would execute when my app processes terminated, but I found out that it was being run only for the main unicorn process, not the workers, as those are terminated with `exit!` (note the !): https://yhbt.net/unicorn.git/tree/lib/unicorn/http_server.rb?h=v6.0.0#n675 Would you mind me asking why you decided to go with `exit!` instead of plain `exit`, and what would be the correct way of executing code on worker termination? Thank you! Best regards, -- pudiva chip líquida ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: at_exit ignored on worker processes 2022-04-11 19:02 at_exit ignored on worker processes pudiva chip líquida @ 2022-04-11 20:42 ` Eric Wong 2022-04-12 0:27 ` pudiva chip líquida 0 siblings, 1 reply; 3+ messages in thread From: Eric Wong @ 2022-04-11 20:42 UTC (permalink / raw) To: pudiva chip líquida; +Cc: unicorn-public pudiva chip líquida <pudiva@skylittlesystem.org> wrote: > Dear unicorns, > > I was trying to register some code with `at_exit`, so that it would > execute when my app processes terminated, but I found out that it was > being run only for the main unicorn process, not the workers, as those > are terminated with `exit!` (note the !): > > https://yhbt.net/unicorn.git/tree/lib/unicorn/http_server.rb?h=v6.0.0#n675 > > Would you mind me asking why you decided to go with `exit!` instead of > plain `exit`, and what would be the correct way of executing code on > worker termination? That `exit!' is only temporary during worker init on SIGQUIT. :QUIT is retrapped and made graceful at the end of init_worker_process: https://yhbt.net/unicorn.git/tree/lib/unicorn/http_server.rb?h=v6.0.0#n694 t/t0020-at_exit-handler.sh should be testing SIGQUIT behavior SIGTERM/SIGINT remain `exit!' since they're specified as immediate (well, as soon as Ruby sig handlers fire) ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: at_exit ignored on worker processes 2022-04-11 20:42 ` Eric Wong @ 2022-04-12 0:27 ` pudiva chip líquida 0 siblings, 0 replies; 3+ messages in thread From: pudiva chip líquida @ 2022-04-12 0:27 UTC (permalink / raw) To: Eric Wong; +Cc: unicorn-public > That `exit!' is only temporary during worker init on SIGQUIT. > > :QUIT is retrapped and made graceful at the end of init_worker_process: > > https://yhbt.net/unicorn.git/tree/lib/unicorn/http_server.rb?h=v6.0.0#n694 > > t/t0020-at_exit-handler.sh should be testing SIGQUIT behavior > > SIGTERM/SIGINT remain `exit!' since they're specified as immediate > (well, as soon as Ruby sig handlers fire) Ahhhh I see! Thank you! -- pudia chip líquida ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-04-12 0:28 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-04-11 19:02 at_exit ignored on worker processes pudiva chip líquida 2022-04-11 20:42 ` Eric Wong 2022-04-12 0:27 ` pudiva chip líquida
Code repositories for project(s) associated with this public inbox https://yhbt.net/unicorn.git/ This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).