Skip to content

[ntuple] Support reading alternative types through the RNTupleProcessor#21462

Draft
enirolf wants to merge 7 commits intoroot-project:masterfrom
enirolf:ntuple-processor-alternative-types
Draft

[ntuple] Support reading alternative types through the RNTupleProcessor#21462
enirolf wants to merge 7 commits intoroot-project:masterfrom
enirolf:ntuple-processor-alternative-types

Conversation

@enirolf
Copy link
Contributor

@enirolf enirolf commented Mar 3, 2026

This changes requires moving the ownership of all fields from an internally stored RNTupleModel in each processor (fProtoModel) to the RNTupleProcessorEntry. In turn, potential namin conflicts when auxiliary RNTuples in a join have the same name as a field in the primary RNTuple are now also handled differently, since this used to rely on the fProtoModel.

This change implicitly adds proper support for requesting subfields, for which tests have been added.

This changes requires moving the ownership of all fields from an
internally stored `RNTupleModel` in each processor (`fProtoModel`) to
the `RNTupleProcessorEntry`. Full removal of `fProtoModel` is taken
car of in the next commit. This change also enables proper handling of
subfields, for wich a test will be added in a separate commit.
@enirolf enirolf self-assigned this Mar 3, 2026
@enirolf enirolf requested a review from jblomer as a code owner March 3, 2026 10:48
@enirolf enirolf changed the title [ntuple] Support alternative types in RNTupleProcessor [ntuple] Support reading alternative types through the RNTupleProcessor Mar 3, 2026
@github-actions
Copy link

github-actions bot commented Mar 3, 2026

Test Results

    22 files      22 suites   3d 3h 59m 46s ⏱️
 3 808 tests  3 807 ✅ 1 💤 0 ❌
76 632 runs  76 623 ✅ 9 💤 0 ❌

Results for commit ec4f94c.

♻️ This comment has been updated with latest results.

@enirolf enirolf marked this pull request as draft March 4, 2026 07:42
enirolf added 6 commits March 4, 2026 11:08
To distinguish them internally from regular fields that have been added
explicitly by the user.
This change also includes a different way to handle field/processor
naming conflicts, which previously relied on the `fProtoModel`, plus an
additional test for this
To make sure that fields of "second chains" are also added correctly to
the processor.
@enirolf enirolf force-pushed the ntuple-processor-alternative-types branch from ec4f94c to 091710b Compare March 4, 2026 10:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant