From my understanding, it appears that the code TaskRunner.cxx under the Framework always publish histogram to the CCDB every fixed amount of time. But we want a more flexible publication of histograms. For instance, I modify TaskRunner.cxx to make it publish histogram (empty) when there is a new run injected and always publish histogram when one file has finished processing. In addition, I will stop publishing new histograms when all files in the run are processed with no new injected. So I wonder if your TaskRunner.cxx can do this? We eventually plan to make a pull request to merge our QC codes to the official QC repository.
Also, for the CCDB, I believe currently we save 1 version per 60 minutes. Is that right?
A QC task starts publishing histograms when there is a start of activity (i.e. a run when we get started by the ECS) and will publish a new version every cycle whose duration is defined in the config file (attribute cycleDurationSeconds). The histogram is published “as is” , i.e. empty if it was not filled.
The way you are using the QC is very particular and rather a result of immature technologies (QC, DPL, ITS specific code). As discussed some time ago, the ITS DPL chain we are discussing should ultimately look like : Readout|File -> Digitizer -> Data Sampling -> QC Task -> QC Checker -> Repository
In such a chain, I am unable so far to understand how the proposed change fits. I would have time next week to discuss it directly which might help me understand the purpose. For example on Monday afternoon.