Skip to content

Fix alpide bc panic

Marc Konig requested to merge fix-alpide-bc-panic into master

resolves #39 (closed)

The issue was caused by a lane going into fatal state (correctly reported by an APE_OOT) and thus no bunch counters were decoded from the ALPIDE data from that lane, so when the bunch counter values are checked, unwrap() is called on a None value. This is a case of failing fast because of what is essentially missing features which is the behaviour we want.

Resolved by adding new features to decode all APEs and handle the ones that indicate a lane going into fatal. Now the lanes that reported a fatal state correctly through the ITS protocol are tracked continuously.

Another feature is implemented to update the expected lane count to reflect any lanes correctly reporting themselves to be in fatal state, which is checked against the lanes found in each ALPIDE data frame.

Merge request reports