$ dune monitor
Error: failed to connect to RPC server unix:path=_build/.rpc/dune
Unix.Unix_error(Unix.ECONNREFUSED, "connect", "")
backtrace:
Raised by primitive operation at Rpc__Csexp_rpc.Client.connect in file
"rpc__Csexp_rpc.ml", line 577, characters 20-45
Called from Fiber__Scheduler.exec in file "fiber__Scheduler.ml", line 77,
characters 8-11
Called from Fiber__Scheduler.start in file "fiber__Scheduler.ml", line 219,
characters 2-42
Called from Fiber.run.(fun) in file "fiber.ml" (inlined), line 21, characters
28-47
Called from Dune_scheduler__Scheduler.Run_once.run in file
"dune_scheduler__Scheduler.ml", line 492, characters 10-50
Called from Dune_scheduler__Scheduler.Run_once.run_and_cleanup in file
"dune_scheduler__Scheduler.ml", line 502, characters 14-21
Called from Dune_scheduler__Scheduler.Run.go in file
"dune_scheduler__Scheduler.ml", line 585, characters 12-42
Called from Cmdliner_term.app.(fun) in file "cmdliner_term.ml", line 22,
characters 19-24
Called from Cmdliner_eval.run_parser in file "cmdliner_eval.ml", line 41,
characters 7-16
Called from Cmdliner_eval.eval_value in file "cmdliner_eval.ml", line 256,
characters 15-47
Description
If a watch server is hard killed then the
_build/.rpc/dunesocket is orphaned. Subsequent clients fail badly when the connection is rightly refused:Reproduction case
#15675