Improve the robustness of the automatic pause & resume mechanism
At the moment, we provide the ability for users to specify a maximum file size or duration. The way that this is accomplished is by the disk-writing Aggregator checking the size or duration of the disk file that is currently being written, and when the desired size or duration is reached, the Aggregator sends Pause and then Resume messages to all of the processes in the system. This has the advantage of draining the events from the system.
The mechanism that the Aggregator uses to send the Pause and Resume messages is to send XMLRPC messages, just like Run Control. This means that there is the possibility of problems, though, since Run Control could be sending a series of Pause or Resume or Stop messages at the same time that the Aggregator is sending Pause or Resume messages. We see such issues occasionally in the DS-50 DAQ.
This issue may go away if we move to a model where the art RootOutput module can internally handle the switching from one file to another (this is mentioned in Issue #5961).