Closed
Description
- [Bug] Interplay of Cryostat discovery ping period and harvester period results in reset intervals and timing skew #90 : timing skew can become total failure to upload periodic recordings when the discovery ping period is shorter than the upload period
- discovery ping signal causes Agent to deregister and re-register. The deregistration is handled internally as a full deregistration as if the Agent is shutting down. This cancels the periodic archive timer (which starts anew on re-registration) and also seems to prevent onexit uploads
This can probably be resolved by adding additional internal state to the Agent. Currently the lifecycle can go from REGISTERED
(and PUBLISHED
) to DEREGISTERED
, and back again. Adding state transition chains like REGISTERED -> REFRESHING -> REGISTERED
(on success) and REGISTERED - > REFRESHING -> DEREGISTERED
(on failure) should allow more nuanced handling of the discovery ping signal so that these bad effects can be avoided until distinctly necessary.