by Kyle Knoepfel in Events
Tim Doody, Chris Jones, Tom Junk, Brian Rebel
artists: Lynn Garren, Chris Green, Kyle Knoepfel, Marc Paterno
Two tagged releases this week:
Primary bug fix was for issue #10623, which reports a segmentation violation under certain processes where Run and SubRun are used. The segfault originated from not putting a product onto the SubRun whenever produces had been called. Failing to put a product onto the SubRun (when produces is called) is considered an error, which art cannot check for (Sub)Run products. Segmentation violation is now avoided by doing an appropriate checking of product presence bits.
art 1.18.00 (ROOT 6 release)
One external package change relative to 1.17.03: ROOT 5 to ROOT 6
Experiments should not have to modify any art-related code.
Two consequences of going to ROOT 6:
– The event processor takes longer to initialize (~5 seconds)
– ROOT 6 dictionary-loading mechanisms manifest in greater memory use
After some investigation, the latter issue is due primarily to art’s mechanism for supporting Event::getView. The current release works just fine, but under ROOT 6, supporting getView requires parsing headers to determine the answer as to what types are supported. When deactivating the getView feature, the memory growth for one of art’s tests was 12KB instead of 150MB.
We are exploring ways to avoid a full auto-parse and yet retain the Event::getView functionality. A full analysis is still to come.
The artists ask experiments to try out ROOT 6 as soon as possible to get their feedback.
Version 4.10.1 patch 2 is now available with an e9 build.