TileTPCnv: Allow to read exactly the same Tile raw data container from pool (ATLASSIM-5269)
Tile raw data container changes when going from transient to persistent
and back to transient due to the fact that Tile frag hash type is stored
in persistent one but is not set up in transient one during reading the container back.
In current implementation that allows to avoid re-initializing Tile frag hash function
in Tile raw data container and therefore to optimize reading Tile raw data containers from pool.
One can observe this when merging RDOs. This feature should have no impact on physics
but it may cause issues when implementing Tier0 tests and during validation.
So, this MR removes this feature/optimization and allows
to read exactly the same Tile raw data container from pool.
Optimization, which allows to have the same Tile raw data container during
transient -> persistent -> transient transitions, will be implemented later.
The following tests have been done:
RunTier0Tests.py --pileup => ALL TESTS: PASSED
RunTier0Tests.py --overlay => no differences in output files
(all tests have not been passed because perfmon info
is not found in logs in clean and patched versions)
RunTier0Tests.py => only expected differences in Tile raw data container (MuRcvRawChCnt)
in ESD files produced by q221 tests in clean and patched versions, since there is
transient -> persistent (RDO) -> transient -> persistent (ESD) transitions.
Now (in patched version) this container is exactly the same in RDO and ESD files.
In clean version they are not the same as it explained above in description.
In order to test MC+MC Overlay jobs in AthenaMT
the following commands have been used in clean and patched versions:
export ATHENA_CORE_NUMBER=8
Reco_tf.py --AMIConfig d1592 --inputHITSFile /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/OverlayMonitoringRTT/mc16_13TeV.424000.ParticleGun_single_mu_Pt100.simul.HITS.e3580_s3126/HITS.11330296._000376.pool.root.1 --inputRDO_BKGFile /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/OverlayMonitoringRTT/PileupPremixing/22.0/v4/RDO.merged-pileup-MT.100events.pool.root --outputRDOFile myRDO.pool.root --imf False --maxEvents=100 --CA Overlay:True --multithreaded
In order to test output files the following command has been used:
acmd diff-root myRDO.pool.root ../clean/myRDO.pool.root --order-trees
No crashes in jobs or differences in output files have been observed.