-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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] Add test for reading an unknown column type #16516
[ntuple] Add test for reading an unknown column type #16516
Conversation
fe595f6
to
e7363e4
Compare
Test Results 14 files 14 suites 3d 3h 57m 5s ⏱️ Results for commit 2e465a4. ♻️ This comment has been updated with latest results. |
e7363e4
to
2e465a4
Compare
@@ -267,6 +267,10 @@ namespace { | |||
using ROOT::Experimental::EColumnType; | |||
using ROOT::Experimental::Internal::RColumnElementBase; | |||
|
|||
// testing value for an unknown future column type | |||
inline constexpr EColumnType kTestFutureType = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is in a public header and thus part of the public interface. If we can not move it to a private header, can we put it into the Internal
namespace?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This header is not public, it's in the src
directory and only included by our cxx files (see comment on top of the file)
This Pull request:
avoids throwing an exception when creating the descriptor for an RNTuple containing an unknown column type. We want to support this case for forward compatibility. Also adds a unit test testing this specific case.
Some dedicated code needs to be added to the internals of RNTuple to support this kind of test case, but it's not exposed to the user.
Remarks
Currently the test just checks that we can read back the descriptor. A future PR will add a "fwd compatibility mode" to the read options that'll allow a user to reconstruct the model skipping over fields containing unknown column types.
Checklist: