I am trying to skim Particle Flow tree variables from many ROOT files.
When I test the code as a macro on a single ROOT file it runs smoothly, but when I run it over 100s of ROOT files using condor, I get " *** Break *** segmentation violation" errors resulting from messages like:
“Error in TBufferFile::ReadVersion: Could not find the StreamerInfo with a checksum of 0x0 for the class “vector” in /eos/user/c/clemahie/HIForward/HiForward_Hiforest_PbPb_Run2018/2018/230301_151751/0001/HiForestAOD_trig_1005.root.”
(I am using ROOT 6.24/08 on lxplus)
Attached is my .C file as well as the .sub and .sh files. Thanks for any help.
Cole pfSkimEx_sh.txt (324 Bytes) pfSkimEx_sub.txt (425 Bytes)
2 possibilities. The file (HiForestAOD_trig_1005.root) mentioned in the error message could be broken. You can test that (if you did not already) by running ‘just’ on that file. The 2nd possibility is that some of the file have larger arrays than expected and you ended up with memory over-write. i.e.
Thank you all for your suggestions. I have found an easier and more efficient way to do what I want to do by first making cuts and then cloning the branches from the original files I am interested in.
This avoids my previous use of large arrays and vectors and I have no errors.