art-daq / artdaq

Other
0 stars 3 forks source link

Add tests for RoutingMasterCore #133

Closed eflumerf closed 2 years ago

eflumerf commented 2 years ago

This issue has been migrated from https://cdcvs.fnal.gov/redmine/issues/22280 (FNAL account required) Originally created by @eflumerf on 2019-04-03 16:16:55


Several issues have arisen with RoutingMasterCore functionality vs. expectations. A comprehensive suite of unit tests should be implemented to ensure that RoutingMasterCore (which does the work of the Routing Master application) meets expectations.

eflumerf commented 2 years ago

Comment by @eflumerf on 2019-04-03 16:21:14


Work in progress on artdaq:feature/22280_RoutingMasterCore_t, based on Kurt's feature/22122_RMCore_Tweaks.

So far, testing has uncovered issues with the state machine, handling of tokens from non-registered receiver ranks, and premature program exits.

It also includes a more complete solution to Redmine Issue 22122, where the Routing Master will add new routing information to the tables it sends out, subject to timeouts, when it is having issues collecting acknowledgements from all of the sender ranks. This will help in situations where a non-critical sender goes away for some period of time.

eflumerf commented 2 years ago

Comment by @eflumerf on 2019-04-08 13:11:32


RoutingMasterCore_t has reached the point where it is testing most of RoutingMasterCore, except for some cases where sockets fail to set up correctly.

There have been several changes to RoutingMasterCore on this branch, as testing has turned up potential bugs in that class.