Memory leak in Roofit 3.50 but not older versions


I discovered that when making a RooDataSet with around 83M entries in Roofit v3.50, I get the following output

Filling the RooDataSet for SingleMuon.root… Number of files: 1
Number of entries: 83183208
terminate called after throwing an instance of 'std::bad_alloc’
what(): std::bad_alloc

however, when running with version 3.14 or 3.17, this does not happen.

Filling the RooDataSet for HISingleMuon.root… Number of files: 1
Number of entries: 83183208
returning raw dataset…
RooDataSet::HISingleMuonHP_21Jan.root[muonPt,muonEta,muonScat,muonELoss,muonCategory,chargeCategory,centrality,massCB] = 16811320 entries

does anyone know how to work around this?


Hi Thomas,

Various leaks have been fixed in ROOT 5.32 (RooFit 5.31). Can you give that a try
and see if that still leaks for you?


Hi Wouter,

Roofit 3.17 seems to work just fine, but I will try with the version you recommend as well (5.31). Thanks for all your help!