New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DAQ multi-LS output module (10_6_X) #26425
DAQ multi-LS output module (10_6_X) #26425
Conversation
moved serialization code to external base class (which doesn't inherit from edm::one::OutputModule). This allows sharing serialization code with global and limited output modules.
It is registered in the Framework as vFOutputModule. For backwards compatibility and testing/comparison, old module will not (yet) be removed and will be usable using the old macro name (ShmStreamConsumer).
Conflicts: EventFilter/Utilities/test/startFU.py
of the call. There is also possibility to inherit Common by EvFOutputModule, but serializer calls will then have to be const-friendly (i.e there is need to initialize several variables earlier).
- StreamerOutputModuleCommon no longer needs getSelections. serializer is initialized at construction. - updated test scripts
undetected without stripping const in write and global EoL -propagate and use ofstream close to close streamer data file in the output module
cache. This now permits module to see more than one lumisection.
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26425/9198
|
A new Pull Request was created by @smorovic (Srecko Morovic) for master. It involves the following packages: EventFilter/Utilities @perrotta, @smuzaffar, @Dr15Jones, @emeschi, @cmsbuild, @slava77, @mommsen can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
please test |
The tests are being triggered in jenkins. |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
@cmsbuild please test |
The tests are being triggered in jenkins. |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1 |
+1 |
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
This is DAQ (HLT/Filter Farm) output module implementation based on one::OutputModule watching LuminosityBlockCache. In that case limitation of handling only one LS at the time present in current DAQ module is removed. Based on #25951 which was an attempt to do this using limited output module class, and possible thanks to improvements made in #26196.
StreamerOutputModuleBase (inheriting one::OutputModule) base is restructured and serializer code (shared with the new EvFOutputModule) extracted to a common class which can be used by both module types (which inherit on different templated class of one::OutputModule). Currently, "base" is used by: DQM test module, Streamer writer module and previous DAQ output module which will still be kept for some time in the release.
New module is called EvFOutputModule while previous DAQ module remains registered ShmStreamConsumer (this name is currently still used in production configurations).
PR validation:
Output module was added and tested with configuration EventFilter/Utilities/test/startFU.py and also new configuration configured to work with 2 concurrent LS at the time: start_multiLS_FU.py.
It has also been verified to work in test setup emulating the Filter Farm: using both old and new version of the output module (former being tested due to changes made in the base class). Both output modules produced files or comparable size, identical header. Also, dat files from the new module could be normally read by the NewEventStreamFileReader source.