framework icon indicating copy to clipboard operation
framework copied to clipboard

Critical issue. Urgent help needed. TRestProcessRunner conflicts with metadata class

Open jgalan opened this issue 3 years ago • 4 comments

Hi,

when we are launching @jovoy the processing chain given in the attached configuration file:

restManager --c opticsBench.rml

it will run without issues when we define a TRestAxionGeneratorProcess with a flat generator type. However, if we define a solarFlux generator type, it will happen that only a few events are launched by TRestProcessRunner.

Just guessing we found that the TRestAxionSolarFlux seed value was affecting to the result, when solarFlux is the generator type. So, changing the seed sometimes the processing chain breaks, sometimes it generates a different number of primaries.

opticsBench.txt

Hope @nkx111 you got an idea about what is wrong here

jgalan avatar Sep 12 '22 16:09 jgalan

BTW, solarSeed on the attached file should be simply seed. I was doing a test changing the parameter name, but it did not affect.

jgalan avatar Sep 12 '22 16:09 jgalan

Ok, I understand now what it is happening. We have a condition, if the energy is above a given value, then the process will return nullptr. I thought this would skip the event, but instead is terminating the event processing.

That why if we change the seed the number of events changes, once the event energy is above 10, it will end the event.

This was done like that before, so, @nkx111 what we should do now to simply skip the event?

jgalan avatar Sep 13 '22 09:09 jgalan

However, in other processes this is done like that if (ApplyCut()) return nullptr;

jgalan avatar Sep 13 '22 09:09 jgalan

I found a way to bypass the problem, but the issue it is still there. Why when we return nullptr the event processing stops instead of just skipping the event?

jgalan avatar Sep 13 '22 10:09 jgalan