Skip to content

EventLoop Leak Check, 21.2 branch (2019.01.11.)

This is the evolution of !20190 (closed).

As described in that ticket, the new code checks the memory usage of the analysis processes (using TSystem::GetProcInfo) after the job's initialisation and finalisation, and makes an estimate about the job's memory leaks based on that. While this is a very simplistic approach, it should be good enough to find at least obvious memory leaks.

The behaviour we finally agreed on is this:

  • All jobs from now on print a summary about their memory behaviour during finalisation, and the jobs also save this info into a newly introduced TTree in the jobs' output file.
  • By default a warning message is printed when the code finds a >10 kB/event >10 MB absolute memory leak in the job.
  • Job properties are introduced to be able to fine-tune this behaviour.

In the future at one point the default behaviour will be changed to make leaky jobs fail outright, and not just print a warning. But in the first round we want to test the code's reliability in this non-invasive mode.

Merge request reports