radicle-heartwood-lfs/radicle-node/src/worker
Alexis Sellier 5fa677c5fb
node: Fix worker fetch deadlock
It turns out it's possible to create a deadlock when using
`child.wait()` with `Stdio::piped()`, if we don't read the output while
the child process is running. This is because the pipe has an internal
kernel buffer that will eventually fill up, causing the child process to
block on writing to stdout and never exit.

To remedy this situation, we read the stdout in a thread while the child
process is running.
2023-05-23 16:12:52 +02:00
..
fetch radicle: update radicle-git-ext 2023-05-08 10:36:15 +01:00
channels.rs node: Read with timeout from worker channel 2023-05-11 14:52:55 +02:00
fetch.rs radicle: update radicle-git-ext 2023-05-08 10:36:15 +01:00
tunnel.rs node: Fix worker fetch deadlock 2023-05-23 16:12:52 +02:00