From 3b5ec1eb01b718111539c7a5546a4038578a8bb5 Mon Sep 17 00:00:00 2001 From: shahoian Date: Mon, 2 Mar 2026 23:56:00 +0100 Subject: [PATCH 1/2] Pass SHMSIZE to mctracks-to-aod in the full_system_test.sh --- prodtests/full_system_test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prodtests/full_system_test.sh b/prodtests/full_system_test.sh index 07ccdf01d4566..24215276fd463 100755 --- a/prodtests/full_system_test.sh +++ b/prodtests/full_system_test.sh @@ -169,7 +169,7 @@ SIMOPTKEY+="GenTPCLoopers.colsys=${BEAMTYPE};" taskwrapper sim.log o2-sim ${FST_BFIELD+--field=}${FST_BFIELD} --vertexMode kCollContext --seed $O2SIMSEED -n $NEvents --configKeyValues "\"$SIMOPTKEY\"" -g ${FST_GENERATOR} -e ${FST_MC_ENGINE} -j $NJOBS --run ${RUNNUMBER} -o o2sim --fromCollContext collisioncontext.root:o2sim # Test MCTracks to AO2D conversion tool -taskwrapper kine2aod.log "o2-sim-kine-publisher -b --kineFileName o2sim --aggregate-timeframe $NEvents | o2-sim-mctracks-to-aod -b --aod-writer-keep dangling | o2-analysis-mctracks-to-aod-simple-task -b" +taskwrapper kine2aod.log "o2-sim-kine-publisher --shm-segment-size $SHMSIZE -b --kineFileName o2sim --aggregate-timeframe $NEvents | o2-sim-mctracks-to-aod --shm-segment-size $SHMSIZE -b --aod-writer-keep dangling | o2-analysis-mctracks-to-aod-simple-task --shm-segment-size $SHMSIZE -b" if [[ ! -s AnalysisResults_trees.root ]] || [[ ! -s AnalysisResults.root ]]; then echo "Error: AnalysisResults_trees.root (AO2D from Kine file) or AnalysisResults.root (simple analysis task output) missing or empty" exit 1 From 4c45a60955788e790742a9f34d1ecea3fd50683c Mon Sep 17 00:00:00 2001 From: shahoian Date: Tue, 3 Mar 2026 00:54:45 +0100 Subject: [PATCH 2/2] Parse and pass SOR to o2-steer-colcontexttool in FST The o2-steer-colcontexttool was using timestamp -1 (i.e. now) therefore the FST is generating the context with the mean-vertex available at givin moment. If this happen to be the default meanvertex with sigmaX,Y of 0.5 cm, the generated data is not reconstructable in the ITS since the reconstruction will use the meanvertx with small sigma corresponding to the selected run number. --- .../Calibration/testMacros/getRunParameters.cxx | 14 ++++++++++++++ prodtests/full_system_test.sh | 5 +++++ 2 files changed, 19 insertions(+) diff --git a/Detectors/Calibration/testMacros/getRunParameters.cxx b/Detectors/Calibration/testMacros/getRunParameters.cxx index c06926511c95d..d3f9b0a2ece69 100644 --- a/Detectors/Calibration/testMacros/getRunParameters.cxx +++ b/Detectors/Calibration/testMacros/getRunParameters.cxx @@ -53,6 +53,18 @@ void writeDurationToFile(long duration) fclose(fptr); } +void writeSORToFile(long sor) +{ + + FILE* fptr = fopen("SOR.txt", "w"); + if (fptr == nullptr) { + LOGP(fatal, "ERROR: Could not open file to write SOR!"); + return; + } + fprintf(fptr, "%ld", sor); + fclose(fptr); +} + void writeBFieldToFile(float b) { @@ -165,6 +177,7 @@ int main(int argc, char* argv[]) ir = -1.f; writeIRtoFile(ir); writeDurationToFile(run_O2duration); + writeSORToFile(tsSOR); return 0; } } @@ -204,6 +217,7 @@ int main(int argc, char* argv[]) } writeIRtoFile(ir); writeDurationToFile(duration); + writeSORToFile(tsSOR); return 0; } diff --git a/prodtests/full_system_test.sh b/prodtests/full_system_test.sh index 24215276fd463..8e252c5a8378f 100755 --- a/prodtests/full_system_test.sh +++ b/prodtests/full_system_test.sh @@ -81,6 +81,10 @@ fi [[ "$FIRSTSAMPLEDORBIT" -lt "$RUNFIRSTORBIT" ]] && FIRSTSAMPLEDORBIT=$RUNFIRSTORBIT +# get run start time +taskwrapper run_params.log o2-calibration-get-run-parameters -r $RUNNUMBER +runStartTime=`cat SOR.txt` + # allow skipping JOBUTILS_SKIPDONE=ON # potentially enable memory monitoring (independent on whether DPL or not) @@ -162,6 +166,7 @@ taskwrapper collcontext.log o2-steer-colcontexttool \ --maxCollsPerTF ${NEvents} \ --orbitsEarly ${OrbitsBeforeTf} \ --bcPatternFile ccdb \ + --timestamp ${runStartTime} \ ${QEDSPEC} # Include collision system for TPC loopers generation