Complete the transition to RootOutput-based automatic file closing
With art v2_02+, there are configuration options in the RootOutput_module (https://cdcvs.fnal.gov/redmine/projects/art/wiki/Output-file_handling) that support the automatic closing of files. These options have been tested in one or more test environments, but I don't believe that they are in wide use.
We should update our configuration examples to make use of them, deprecate or remove the older functionality in the Aggregator to use the Pause and Resume transitions to achieve automatic file closing, and remove the configuration options in our sample FHiCL files that use the older file closing.
The changes to implement this request will probably be tied to removing support for older versions of art that don't have the enhanced RootOutput_module.
#6 Updated by Eric Flumerfelt almost 3 years ago
- % Done changed from 0 to 80
I think we've implemented pretty much everything that we can for right now...
One issue remaining is that the RootOutput-based file closing does not start a new subrun when rolling over files based on file size or events. For this, we'll have to maintain the pause-and-resume functionality of the Aggregator (or move it somewhere else, like EventStore, where it would be available to things like the EventBuilder or driver).
#7 Updated by Kurt Biery almost 3 years ago
It is certainly not a requirement that a new subrun be created when files roll over based on file size or number of events. In fact, that is probably an anti-requirement - there are experiments who expressly do not want new subruns created when files roll over.
#9 Updated by Eric Flumerfelt almost 3 years ago
- Status changed from New to Resolved
- Assignee set to Eric Flumerfelt
- % Done changed from 80 to 100
So now the automatic pause-and-resume is activated through setting the "subrun_size_MB", "subrun_duration", or "subrun_event_count" fhicl parameters of AggregatorCore. artdaq_demo does not set these parameters any more, it now populates the fileProperties block of RootOutput (Feature #15493).
I think it might be a good idea to create a "rollover subrun" command which instructs the Aggregators and EventBuilders to simply change the subrun number without disrupting DAQ data flow and then deprecating the pause-and-resume function entirely. (Feature #15494)