The two-process daemon took the same signal, and has no test that says so
This commit is contained in:
parent
f543643d19
commit
c9bb12e591
@ -59,6 +59,16 @@ block: eight hit-and-run connections, then a request proving the session is
|
|||||||
still there and still knows what it installed. Against the parent of the fix it
|
still there and still knows what it installed. Against the parent of the fix it
|
||||||
fails with `killed by SIGPIPE`.
|
fails with `killed by SIGPIPE`.
|
||||||
|
|
||||||
|
**Both transports, and only one of them has a test.** `ignore_sigpipe` is
|
||||||
|
called from two places and the suite's daemons are all merged, so the check
|
||||||
|
above covers `merged_setup` and nothing covers `two_process` — which NEXT.md
|
||||||
|
describes as the escape hatch for a machine that cannot build the compiler
|
||||||
|
object, so it is live code somewhere. Driven by hand: before the fix a
|
||||||
|
`--two-process` daemon dies on the *first* hit-and-run connection with status
|
||||||
|
141 and leaves its socket behind, exactly as the merged one does; after it,
|
||||||
|
a hundred of them leave it serving and answering `describe`. If that call site
|
||||||
|
is ever removed, nothing in `dune test` will say so.
|
||||||
|
|
||||||
## The fix
|
## The fix
|
||||||
|
|
||||||
`lib/dev.ml`, three parts:
|
`lib/dev.ml`, three parts:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user