Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ntuple] Make RNTupleChainProcessor composable #17393

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

enirolf
Copy link
Contributor

@enirolf enirolf commented Jan 9, 2025

This PR introduces the possibility to create RNTupleChainProcessors from other processor objects. In turn, this makes it possible to, for example, create a chain of joined ntuples.

N.B. refactoring here and there is still necessary before the PR is fully ready.

@enirolf enirolf self-assigned this Jan 9, 2025
Prevents the page sources corresponding to the processor to be openened
upon creation. Instead, defer opening them until the first `Advance`
call.
In anticipation of the composition of the different processors (in
particular, the join processor), entries loading should offer the
possibility for random access. This will not change anything about the
way users can interact with the processor, which is exclusively through
the (linear) iterator.
With this change, the `RNTupleChainProcessor` iterates over other
`RNTupleProcessor` objects instead of individual ntuples. This allows us
to chain, for example, ntuples that have previously been joined using
the `RNTupleJoinProcessor`.
Copy link

github-actions bot commented Jan 9, 2025

Test Results

    17 files      17 suites   3d 17h 52m 45s ⏱️
 2 693 tests  2 693 ✅ 0 💤 0 ❌
44 127 runs  44 127 ✅ 0 💤 0 ❌

Results for commit 8d818f5.

♻️ This comment has been updated with latest results.

@enirolf enirolf force-pushed the ntuple-processor-chain-composition branch from 248909a to 8d818f5 Compare January 10, 2025 08:58
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