When forking a ruby process without detaching it, the parent process should not wait for the child process to exit. Requiring debug however makes the process wait until the child process quits.
To Reproduce
require 'debug'
fork { sleep 10 }
Expected behavior
The parent process should exit immediately after forking. Effective behaviour is that the parent process waits for the child process to exit, which takes roughly 10s in the example above. Without the Gem debug, it works as expected.
May I bump this issue? This is quite a concern for us at the moment. We've tried looking into it ourselves, but so far I had no luck in identifying the problem. Many thanks for your help.
Your environment
ruby -v
: ruby 3.2.1 (2023-02-08 revision 31819e82c8) +YJIT [x86_64-darwin23]rdbg -v
: rdbg 1.9.2Describe the bug
When forking a ruby process without detaching it, the parent process should not wait for the child process to exit. Requiring
debug
however makes the process wait until the child process quits.To Reproduce
Expected behavior
The parent process should exit immediately after forking. Effective behaviour is that the parent process waits for the child process to exit, which takes roughly 10s in the example above. Without the Gem
debug
, it works as expected.Additional context
May be related to #1099.