op25 /op25/status reports "running" after multi_rx has died #12

Closed
opened 2026-09-27 14:41:45 -04:00 by logan · 0 comments
Owner

Split out of node-26#11. On 2026-09-27, radio-box's multi_rx was dead (it failed to open its SDR), yet /op25/status still said running. _is_running() checks the process group via killpg(pgid, 0), and that still succeeds while the wrapper shell or liquidsoap is alive. Same class of bug as the one fixed in secondary-sdr (b54624e), which switched to Popen.poll().

Impact: the edge dashboard's OP25 status and anything keyed on it (resume logic, C2 view) show a dead scanner as healthy.

Fix direction: check for the multi_rx process itself (or poll() on the handle), not the process group.

Split out of node-26#11. On 2026-09-27, radio-box's multi_rx was dead (it failed to open its SDR), yet `/op25/status` still said `running`. `_is_running()` checks the process group via `killpg(pgid, 0)`, and that still succeeds while the wrapper shell or liquidsoap is alive. Same class of bug as the one fixed in secondary-sdr (b54624e), which switched to `Popen.poll()`. Impact: the edge dashboard's OP25 status and anything keyed on it (resume logic, C2 view) show a dead scanner as healthy. Fix direction: check for the multi_rx process itself (or `poll()` on the handle), not the process group.
logan closed this issue 2026-10-04 01:26:11 -04:00
logan added the area/sdr-radio
kind
measurement-bug
type
bug
labels 2026-10-05 02:05:08 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: logan/node-26#12