Skip to content

Seed tracks with nonsensical ChannelIDs

Running over the file /calib/online/tmpHlt1Dumps/LHCb/0000277568/Run_0000277568_20230928-060253-181_VAEB01_0030.mdf (PbPb data), the following channelIDs are observed for a seed track (taken from the FitNode):

{ LHCbID : { FTChannelID :  channel =102 sipm =1 mat =3 module=0 quarter=3 layer=2 station=3 } }
{ LHCbID : { FTChannelID :  channel =21 sipm =3 mat =2 module=1 quarter=0 layer=2 station=1 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =96 sipm =2 mat =3 module=7 quarter=1 layer=0 station=0 } }
{ LHCbID : { FTChannelID :  channel =0 sipm =0 mat =0 module=0 quarter=0 layer=0 station=0 } }

The channel IDs with station = 0 are non-physical and lead to a segfault in the PrKalmanFilter here: https://gitlab.cern.ch/lhcb/Rec/-/blob/master/Tr/PrKalmanFilter/include/PrKalmanFilter/KF.h#L830

This might be connected with a failing assert observed in dbg builds, where:

TEST_N8190801_RecoMon_0: ./LHCb/InstallArea/x86_64_v2-el9-gcc12-dbg/include/Event/PrSciFiHits.h:130: float LHCb::Pr::FT::details::Hits::z(int) const: Assertion `index < static_cast<int>( size() )' failed.

Files to reproduce the crash on master are attached.

@lohenry @tmombach @ppais @dovombru @mveghel @gunther @ausachov

PbPbInput.py

runPbPbData.py

Edited by Michel De Cian