Fix output handler for Activity-based TAE
After switching to the hlt1_PbPb_PbSMOG
sequence, we started seeing messages of the type
Failed to write output events.
FATAL RTL MBM: _mbm_declare_event got message with bad status:164266028 [164266028].
MBMOutput ERROR MBMOutput: failed to write buffer 164266028
Managed to reproduce this offline using MooreOnline!404 (merged) and MEP dumps from the runs where this appeared (for instance runs 309968
- 309970
)
This MR adds an additional missing protection in case there's no activity filtered TAE events. Testing this offline with the same setup, the message disappears. This is indicating that there were batches with no TAE events passing the activity filter that were still attempting to be saved. Not clear why this happens yet, given that the activity filter is configured to run always before the TAE filter. I will keep investigating this point.
@msaur we will probably hotfix the stack to include this. I think this warning is only a problem for online data-taking - for simulation purposes, there's no TAE, and also we run Allen via Moore, which doesn't use the Allen output handler. The only way to reproduce this error would be to run over MEPs with the testbench setup, so I don't think this requires a patch release. Also, with my current understanding of the problem, it seems that the MBM is complaining about us trying to save events that it didn't reserve space for, but it looks like we are actually trying to save nothing (just the fact of trying instead of gracefully ignoring these cases gives the errors).