Skip to content

v0.17.0: Reduce compilation time of the QC project (#219)

Compare
Choose a tag to compare
@Barthelemy Barthelemy released this 12 Aug 10:15
· 2483 commits to master since this release
86a002d

Features

Merging workflows.

The DPL framework now allows to merge workflows which are configured separately. This gives us a possibility to attach a QC workflow to any other processing workflows. One can do it by adding the o2-qc-run-qc executable after a pipe character '|' and passing a configuration file path. For example, our basic QC example (o2-qc-run-basic) now can be also ran as follows:

o2-qc-run-producer | o2-qc-run-qc --config json://${QUALITYCONTROL_ROOT}/etc/basic.json

Keep in mind, that having unsatisfied inputs (having no corresponding output to connect) will cause a workflow to be invalid. This might happen for example if one declares a Data Sampling Policy which cannot be satisfied. In the future we plan to have all Policies inputs optional.

New data query format in Data Sampling Policies

The following JSON structure

"dataHeaders": [
  {
    "binding": "sum",
    "dataOrigin": "TST",
    "dataDescription": "SUM"
  },
  {
    "binding": "param",
    "dataOrigin": "TST",
    "dataDescription": "PARAM"
  }
],
"subSpec": "2", 

can now be simplified to

"query" : "sum:TST/SUM/2;param:TST/PARAM/2",

We will keep the old way of configuration available for a minimum of 2 weeks, afterwards only the new format will be supported. All the code in QC (including detector code) has been updated accordingly.

Detectors' code update

Updated all the configuration files to the new Data Sampling Policy query format.

Documentation

Updated accordingly to the new features described above.

Bug fixes

Fixed DataSamplingReadoutProxy's problem of assigning forbidden subSpecs (unable to relay part).

Other

  • QC build time is 12-25% faster.
  • QC library has been split in order to extract the base types into a dedicated library called QualityControlTypes. This should help with reading and writing the QC data.