Aggregator issues

Dear all,

(I updated the question to make it easier to understand)

I was implementing the advanced aggregator option for the TPC detector (just a test case for now). And I have some issues.

In my .json file, I set a few tasks, a few checks, and then try to use an aggregator.
I have results of qualities as following (they are constant):
check1 -> quality1 (good)
check2 -> quality1(good), quality2(bad)
In .json as data source for aggregator I use only quality1 (check1)=good and quality1(check2)=good. The aggregator creates quality1 by taking the worst quality passed to it and quality2 always equal to medium. The result returned for quality1 is bad quality -> opposite to what is expected.

I tried to print the names and qualities of all objects passed to aggregator (print all objects in the QualityObjectsMapType& qoMap), and it seems, that it has all qualities that are created during full chain, even the aggregated qualities. (so it has quality1 (check1), quality1 (check2), quality2 (check2), quality1(aggregator), quality2(aggregator) and uses all of them inside aggregator).

I have thus two questions:

  1. Are the aggregator resulting qualities actually supposed to be included in the next aggregator run as one of the qualities to aggregate?
  2. As mentioned before, check2 produces 2 quality objects, I try to pass only one to aggregator, but both qualities are used in the aggregator. This is wrong behavior, yes?

As I am not sure if it is the problem of the framework or just my .json setup, I will add my .json.

Thanks a lot for any help you can provide!
Have a great day,
Laura
tpcQCCheckWithAggregation.txt (3.1 KB)

Dear @bvonhall @pkonopka ,

I would like to ask if you have any suggestions for my problem.
If you need more information or don’t understand my questions, let me know!

Thank you very much in advance
Cheers
Laura

Dear Laura,
I apologize for my silence, I had missed this topic.
I am reading it now and I will reply afterwards.
Cheers,
Barth

So, both questions stem from the fact that the list of qualities provided to the method is not filtered. It contains more qualities than what is asked. It was done this way for simplicity. I see that it is actually confusing.
I will document it and create an issue to address it: https://alice.its.cern.ch/jira/browse/QC-528

Meanwhile, if you explicitely take the quality objects from the map (qoMap["check1/quality1"]) it should work the way you expect it, right ?

Cheers,
Barth

Dear Barth,

yes, it would work. But this might be not very effective if one actually needs the case of “using the worst quality provided”. Because then one would have to actually make a list of names of qualities that must be compared inside the aggregator.
However, we haven’t created yet the “real case scenario” aggregator, so this is just a thought. So for now it is not an “emergency” request, I just wanted to understand how aggregator works as you implemented it upon our request.

I will follow the jira ticket.

Thanks for all the help you provide!
Have a nice day
Laura

Dear Laura,
I agree with you. The ticket will be addressed but I concur that it is not urgent.
Cheers,
Barth

Dear Barth,

were there any developments towards this problem?
I saw that in jira ticket there were no updates so far.

Cheers
Laura

Dear Laura,

No progress unfortunately. Do you want me to raise the priority of this ticket ?

Cheers,

Dear Barth,

the increased priority would be great. It is, however, not extremely urgent (not needed for next week or so).

Cheers
Laura

1 Like