aprs.me/test
Graham McIntire 753fa50463
Fix ConnectionMonitor deadlock and LeaderElection silent leadership loss
ConnectionMonitor.gather_cluster_stats was calling :rpc.call(Node.self())
which GenServer.call'd back into itself while blocked in handle_info,
causing a 5-second deadlock timeout every 30 seconds. Fixed by computing
local stats directly from state.

LeaderElection never verified that a leader still held the :global
registration. After :global conflict resolution (two isolated nodes
merging), the loser was silently unregistered but stayed is_leader: true
forever, causing both pods to connect to APRS-IS with the same callsign
in a reconnect loop. Fixed by adding verify_leadership/1 to
check_leadership which detects lost registrations and steps down.
2026-02-19 18:18:31 -06:00
..
aprsme Fix ConnectionMonitor deadlock and LeaderElection silent leadership loss 2026-02-19 18:18:31 -06:00
aprsme_web Fix RF path visualization for hovering over track points 2026-02-19 15:41:32 -06:00
assets/js Improve type safety for getTrailId function 2025-07-21 08:36:38 -05:00
integration cleanup 2026-02-07 10:55:19 -06:00
support more tests 2026-02-09 17:21:16 -06:00
types format 2026-02-18 14:49:58 -06:00
test_helper.exs fix some tests 2026-02-09 15:32:09 -06:00