root
root copied to clipboard
RNTupleView segfaults if used after reader destruction
Check duplicate issues.
- [ ] Checked for duplicates
Description
When accessed after the generating RNTupleReader is gone, the RNTupleView segfaults. It should fail more gracefully.
Reproducer
TEST(RNTuple, ViewPastLifetime)
{
FileRaii fileGuard("test_ntuple_view_pastlifetime.root");
auto model = RNTupleModel::Create();
auto fieldPt = model->MakeField<float>("pt", 42.0);
{
auto writer = RNTupleWriter::Recreate(std::move(model), "ntpl", fileGuard.GetPath());
writer->Fill();
}
auto reader = RNTupleReader::Open("ntpl", fileGuard.GetPath());
EXPECT_EQ(1u, reader->GetNEntries());
auto viewPt = reader->GetView<float>("pt");
reader.reset();
EXPECT_FLOAT_EQ(42.0, viewPt(0));
}
ROOT version
master
Installation method
n/a
Operating system
n/a
Additional context
No response