Skip to content

fix PFRun3Config.py problem with reordering of SiDetElementCondAlg deps

Fix problem with reordering of SiDetElementCondAlg dependencies which have been added for the TrackingGeometry. This only resolves the problem for PFRun3Config.py. I'm working on a proper solution that gets rid of these artificial dependencies.

Short description of the problem:

  1. Pixel/SCT_DetectorElementCondAlg, MuonManager, TRTAlignment are set up (BEFORE the TrackingGeometryCondAlg is set up)

  2. TrackingGeometryCondAlg then sets up its own Pixel/SCT_DetectorElementCondAlg, the custom merge semantics (see PixelConditionsConfig.py:448) means that the versions of the algs set up earlier are updated with the newly set dependencies

  3. TrackingGeometryCondAlg returns a ComponentAccumulator with the adjusted ordering that satisfies the dependencies of the SiDetectorElementCondAlgs. <-- this is the root cause of the problem, the ordering should not need to be manually edited. It is meant as a stop-gap solution until we fix the TG deps.

  4. The MERGING of the CA from the TG and the CA created earlier leads to the correct ordering being DISCARDED in favor of the previous ordering.

The suggested solution simply inverts the merging: earlierCA.merge(TG) becomes TG.merge(earlierCA)

Also fix bug in AtlasTrackingGeometryCondAlgConfig.py which left duplicates in the condAlgSequence (in practice inconsequential).

Merge request reports