v0.4.1 Changes from feedback after CHEP + from mFLES agent implementation
Protect transition table modification methods, try to fix shaky CI tests and improve/cleanup the interface to the Configuration Server
- Protect state transition map modifications so they happen only in Uninitialized state
- Add delays at start of few tests to prevent hangups on 1st action due to ZMQ Host unavailable
- Introduce a ConfigCoreAgent to gather the client side of the Configuration interface in a single place and a cleaner way (+ abstract it for later usage in agents)
@t.stockmanns This tries to address the danger of transition table/state machine corruption that we discussed on Monday.
With a bit of luck the changes to the tests should address some of the spurious CI hang-ups (I observed these while having many other things running on the CPU at the same time)
=> Please do not hesitate to tell me the name of tests if you see some getting stuck locally for more than 10-15 minutes instead of failing, I suspect that there is still something fishy somewhere in the Fixtures teardown... maybe some Subagent being terminated while there master is trying to cleanup its slaves or reverse or something in this direction
=> Observed locally a few times but could not find a cause, sometime the agents get stuck during termination after starting to close the logger. Suspicion on the sleep loop at line 224 while waiting for the message queue to be emptied and the thread to be finished, but no deadlock found in threading events logic yet
Edit: Changed title and description to match increased scope