Regression for RooStats::HypoTestInverter in ROOT6.26

On line

result = inverter.GetInterval()

I get

cppyy.gbl.std.bad_alloc: RooStats::HypoTestInverterResult* RooStats::HypoTestInverter::GetInterval() =>
    bad_alloc: std::bad_alloc

Checked against, 6.24, 6.22 the issue is not observer there.

Welcome to the ROOT Forum! Maybe @moneta or @jonas can take a look at this and maybe open a github issue?

Hi, thanks a lot for reporting this! Can you please provide a full reproducer for the problem so we can fix it? Thanks a lot!

Yes, still working on this. I am struggling to pinpoint when it exactly happens I just know that something changed when running my script with different versions.

the same snakemake jobs now fail in the CI (CentOS7 image with lb-conda default) but the error message is different: cppyy.gbl.std.length_error: RooStats::HypoTestInverterResult* RooStats::HypoTestInverter::GetInterval() => length_error: vector::reserve

Hi @Mindaugas_Sarpis!

I think I have an idea now what could go on here.

Which ROOT version was used to produce the Workspace that you are using for your Hypothesis test? Also 6.26, or the master branch of ROOT?

In case the workspace was produced with master, I think it’s a forward incompatibility problem that might be resolved by this PR:

At least that’s the PR that fixes the problem in the seemingly related forum post:


Well I was using ROOT6.26 in a conda environment (and also in container).

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.