Extract `rpc_process` and terminate the RPC child after a grace period (#5171) The daemon waited on the `nano_rpc` child forever after stopping, so a signal that reached only the daemon hung it, and the wallet's terminate call sat behind `USE_BOOST_PROCESS`, which nothing defines, so it orphaned the child on quit. Spawning and stopping the child now lives in `nano::rpc_process`, shared by both: stopping gives the child a few seconds to exit on its own and terminates it otherwise.
__________
Type: commit
Hash: bb2064bd1b0d93edd8efa471d801df3d3bafde98
Created: yesterday
__________
gr0v1ty/nano-node:bb2064bd1b0d93edd8efa471d801df3d3bafde98
| Test Case | Status | Duration | Median Deviation | Log | Graph |
|---|---|---|---|---|---|
| 5n4pr_conf_10k_bintree | PASS | 112 s | -4.5 s | - | Show |
| 5n4pr_conf_10k_change | PASS | 139 s | -3.5 s | - | Show |
| 5n4pr_conf_change_dependant | PASS | 106 s | -11.0 s | - | - |
| 5n4pr_conf_change_independant | PASS | 124 s | 10.0 s | - | - |
| 5n4pr_conf_send_dependant | PASS | 113 s | 0.5 s | - | - |
| 5n4pr_conf_send_independant | PASS | 127 s | 6.5 s | - | - |
| 5n4pr_rocks_10k_bintree | PASS | 116 s | -1.0 s | - | - |
| 5n4pr_rocks_10k_change | PASS | 163 s | 0.5 s | - | - |