Fix to run full HLT1 sequence when muons are in local
After !968 (merged) , most hlt1 sequences were not crashing when the required sub-detector raw banks were missing. The only exception to this was the muon decoding, which continued to be run (and crash) even without muon raw banks.
This MR implements a fix in the muon decoding for the commissioning period, in order to enable hlt1_
sequences to be run at all times without crashing. This will allow the PHYSICS activity (which is switched automatically at stable beams) to be set by default to the tracking sequence.
Closes #406 (closed)
Merge request reports
Activity
added rta-hotfix label
removed rta-hotfix label
added RTA label
added rta-operations label
- Resolved by Fernando Luiz Ferreira Rodrigues
awesome!
/ci-test
assigned to @rmatev
added ci-test-triggered label
- [2023-05-16 23:16] Validation started with lhcb-master-mr#7885
- Resolved by Dorothea Vom Bruch
@cagapopo do you have an idea why the Allen CI physics efficiency test fails? Could it be that these samples had events w/o muon raw banks, which had undefined behavior until now?
mentioned in merge request !1200 (merged)
- Resolved by Roel Aaij
I don't think this problem should be solved this way. Allen has a strong requirement that any input that is needed must exist and I think that should also hold for raw banks. If the muons are not in the partition, the sequence should not include the muons.
I understand the operational issues that result from this and they should be addressed, but in my opinion by configuring the correct sequence based on the partition content. Either fully through ECS or as part of the HLT1 production configuration by providing it with a dictionary of
{partition_content: sequence, ..., default: default_sequence}
and a way to know which detectors are in the partition.If that is deemed too complex or can't be implemented for other reasons, skipping missing banks could be considered. At the very least, all algorithms that have outputs that depend on the banks being present should initialize their outputs to 0 (or another "valid when not available" value) when the banks are not there.
MuonCalculateSRQSize
doesn't currently do that, which leads to undefined behaviour. There could very well be more such issues. All algorithms that use muon hits have to be checked.
assigned to @frodrigu
added 1 commit
- 3c5d1f2d - initialized MuonCalculateSRQSize outputs to zero
added 4 commits
-
3c5d1f2d...7a81656a - 2 commits from branch
master
- 248bbf2a - skip MuonAddCoordsCrossingMaps when muon raw bank = -1
- 0c63117a - initialized MuonCalculateSRQSize outputs to zero
-
3c5d1f2d...7a81656a - 2 commits from branch
added 10 commits
-
0c63117a...3fbb19f4 - 8 commits from branch
master
- 009745af - skip MuonAddCoordsCrossingMaps when muon raw bank = -1
- f5206c4d - initialized MuonCalculateSRQSize outputs to zero
-
0c63117a...3fbb19f4 - 8 commits from branch
added hlt1-throughput-decreased label
- Resolved by Rosen Matev
/ci-test
- [2023-05-22 15:28] Validation started with lhcb-master-mr#7966
- [2023-05-23 23:08] Validation started with lhcb-master-mr#7999
- [2023-05-31 11:40] Validation started with lhcb-master-mr#8076
Edited by Software for LHCbremoved hlt1-throughput-decreased label