cfs-tools / cfs-basecamp

Provides a framework and tools for developing, downloading, and integrating core Flight System (cFS) applications into an operational system.
Other
25 stars 3 forks source link

Telemetry router ports are not correctly allocated and deallocated #7

Closed dmccomas closed 1 year ago

dmccomas commented 1 year ago

Telemetry screen management was refactored from using python threads to running in separate processes. The telemetry router port management was not properly refactored to accommodate this change. The consequence is that a newly launched screen will never update. I have not fully characterized the behavior but through code inspection it's obvious the port management needs to be fixed.

dmccomas commented 1 year ago

Turns out there were multiple issues. Screens not updating was due to an unhandled exception. However, there was also a port management issue. To solve the port management issue, a control port was added to the CmdTlmRouter so processes could notify the router when they were shutting down and the router could free the port.