Adding K0s Qc to GLO matching QC, and move to a different location
This PR adds a first inv mass plot from K0s to the GLO matching QC (added here to not add another QC). The use of this is regulated by a flag. To resolve issues with dependencies, the GLOQC was moved to a separate directory. @mfaggin , @iouribelikov , @f3sch , @alcaliva , @noferini , @shahor02 See also: https://its.cern.ch/jira/browse/QC-1174
PS in QC: https://github.com/AliceO2Group/QualityControl/pull/2291
REQUEST FOR PRODUCTION RELEASES:
To request your PR to be included in production software, please add the corresponding labels called "async-
+async-label <label1>, <label2>, !<label3> ...
This will add <label1> and <label2> and removes <label3>.
The following labels are available async-2023-pbpb-apass3 async-2023-pbpb-apass4 async-2022-pp-apass6-2023-PbPb-apass2 async-2022-pp-apass4 async-2022-pp-apass4-accepted async-2022-pp-apass6-2023-PbPb-apass2-accepted async-2023-pbpb-apass3-accepted async-2023-pbpb-apass4-accepted async-2023-pp-apass4 async-2023-pp-apass4-accepted async-2024-pp-apass1 async-2024-pp-apass1-accepted async-2022-pp-apass7 async-2022-pp-apass7-accepted async-2024-pp-cpass0 async-2024-pp-cpass0-accepted
Error while checking build/O2/fullCI for d83ea8d9baf6054da6004cec02ddaeabc505fb61 at 2024-05-17 12:58:
## sw/BUILD/O2-latest/log
c++: error: unrecognized command-line option '--rtlib=compiler-rt'
c++: error: unrecognized command-line option '--rtlib=compiler-rt'
/sw/SOURCES/O2/13144-slc8_x86-64/0/Detectors/GLOQC/src/MatchITSTPCQC.cxx:411:19: error: 'using element_type = struct o2::globaltracking::DataRequest' {aka 'struct o2::globaltracking::DataRequest'} has no member named 'requestPrimaryVertertices'; did you mean 'requestPrimaryVertices'?
ninja: build stopped: subcommand failed.
Full log here.
@ktf , the error on macOS-arm is not related to this PR... Is it something known?
Error while checking build/O2/fullCI for c061c6e5a78340ea3a60f10792cf07ee1ddd9d0e at 2024-05-30 11:20:
## sw/BUILD/O2-latest/log
c++: error: unrecognized command-line option '--rtlib=compiler-rt'
c++: error: unrecognized command-line option '--rtlib=compiler-rt'
## sw/BUILD/QualityControl-latest/log
input_line_9:370:10: fatal error: 'GlobalTracking/MatchITSTPCQC.h' file not found
Error: /sw/slc8_x86-64/ROOT/v6-30-01-alice4-12/bin/rootcling: compilation failure (/sw/BUILD/165bd63e6afc2ae0bdc3597c917f78177a935e04/QualityControl/Modules/GLO/G__O2QcGLO59537c0418_dictUmbrella.h)
ninja: build stopped: cannot make progress due to previous errors.
Full log here.
Hello,
QC cannot compile without https://github.com/AliceO2Group/QualityControl/pull/2291
It is again this dependency between O2 and QC... @ktf , @Barthelemy , @shahor02 , can you advice? In this case, I cannot make it backward compatible.
Chiara
You could make it backwards compatible by keeping old files in the GlobalTracking (with the same workflow in the GlobalTrackingWorkflow) together with this new gloqc directory.
Thanks @f3sch , @mfaggin , for the comments, I will implement them. @shahor02 : I find it a lot of gymnastics to keep first the old files, then add the new ones... If it is the only way, I can of course do it. Then I will need to change the wf only in a second PR... Quite some complication, IMO.
Dataflow fails for some reasons unralted to this PR. macos-arm is still pending (I don't know if it is normal) but the rest is green. So like this it is compatible to QC. I will now check and implement the other comments.
Here the 2D plot, requested by @mfaggin 👍
Just running on 2 TFs.
With the latest commit, one can specify the track sources, so that then the QC can work with different configurations.
@ktf : to test: what works is: {code} o2-reader-driver-workflow --max-tf 3 $GLOSET | o2-global-track-cluster-reader $GLOSET --disable-mc --track-types "ITS,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,TPC-TRD,ITS-TPC-TRD,TPC-TRD-TOF,ITS-TPC-TOF,ITS-TPC-TRD-TOF" --primary-vertices --secondary-vertices | o2-itstpc-matching-qc --disable-mc --track-sources "ITS,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,TPC-TRD,ITS-TPC-TRD,TPC-TRD-TOF,ITS-TPC-TOF,ITS-TPC-TRD-TOF" {code}
but if I read also clusters, it does not: {code} o2-reader-driver-workflow --max-tf 3 $GLOSET | o2-global-track-cluster-reader $GLOSET --disable-mc --track-types "ITS,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,TPC-TRD,ITS-TPC-TRD,TPC-TRD-TOF,ITS-TPC-TOF,ITS-TPC-TRD-TOF" --cluster -types "TPC,ITS" --primary-vertices --secondary-vertices | o2-itstpc-matching-qc --disable-mc --track-sources "ITS,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,TPC-TRD,ITS-TPC-TRD,TPC-TRD-TOF,ITS-TPC-TOF,ITS-TPC-TRD-TOF" {code}
crashing with:
{code} [884378:tpc-clusters-sharing-map-producer]: [16:46:18][FATAL] Expected channel from_itstpc-matching-qc_to_tpc-clusters-sharing-map-producer not configured. [884378:tpc-clusters-sharing-map-producer]: [16:46:18][ERROR] Exception of type o2::framework::RuntimeErrorRef caught in PreRun: Fatal error. Rethrowing. {code}
Errors seems unrelated. @shahor02 , @f3sch , @mfaggin , if you have no further comments, do you think we could approve and merge?
thanks Chiara. I leave to them the last words, from my side it's ok.
label async-2023-pbpb-apass4 added because this PR is needed to be able to apply others