Moomoo
Child process doesn't exit on .kill()
I have a Fastify Node app that I'm running from Deno as a child process. I can spawn the child process just fine, and see that it's all running as expected. When I call
.kill()
and await the .status
, I can see it exits with a status code of 1
. If the script then waits (even a full minute) and spawns a new child process of the same Node app, I get an EADDRINUSE
error. If, instead, I exit the Deno app and start it again (in well under a minute), the first child process spawns fine and the desired port is available.
It looks like, despite returning an exit code, the child process isn't actually terminated while the Deno app keeps running. I can even see the Node process still in my task manager after it's supposedly been terminated. Once I exit the Deno process, the Node processes disappear immediately. The exit code of 1
probably means that something's wrong, but nothing's coming in over stdout
or stderr
.
FWIW, I get the same when I try to run a Vite dev server instead of a Fastify app, with the same result. Anyone know what I'm doing wrong?
Edit: I'm using Deno 1.46.3 on Windows, in case that's relevant.8 replies