-
Notifications
You must be signed in to change notification settings - Fork 446
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
DPL Analysis: Table definition rewrite #13664
Conversation
REQUEST FOR PRODUCTION RELEASES:
This will add The following labels are available |
ceb880d
to
6701988
Compare
DataFormats/simulation/include/SimulationDataFormat/ConstMCTruthContainer.h
Outdated
Show resolved
Hide resolved
I have done a few comments. As discussed privately yesterday, we should try to minimise the differences and introduce "safe" / "unrelated" changes as soon as possible, to minimise the diff. In particular I think:
|
6701988
to
c19e9a7
Compare
c19e9a7
to
ddca440
Compare
e4d1bde
to
a6faf45
Compare
Is this ready now? |
There is a bit of an issue with O2Physics (hence the latest reverts), but otherwise it is functional. |
Error while checking build/O2/fullCI for d557502 at 2024-11-21 12:34:
Full log here. |
Error while checking build/O2/fullCI for 4ee33f4 at 2024-11-21 16:42:
Full log here. |
Error while checking build/O2/fullCI for 0d2761f at 2024-11-22 12:23:
Full log here. |
Error while checking build/O2/fullCI for 94344f6 at 2024-11-27 10:28:
Full log here. |
8446a10
to
4f3fff7
Compare
Error while checking build/O2/fullCI for 9c625d2 at 2024-12-03 12:09:
Full log here. |
Error while checking build/O2/fullCI for d75c13a at 2024-12-03 13:29:
Full log here. |
Error while checking build/O2/fullCI for 9c86a2c at 2024-12-03 14:41:
Full log here. |
struct Binding { | ||
void const* ptr = nullptr; | ||
size_t hash = 0; | ||
std::span<TableRef const> refs; |
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.
Not for this PR, however why do you need a member for it? Can't you just have a function?
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.
When binding is created I can only store some aspects of the type, since binding itself is not templated. For now hash is enough, but I have some ideas to improve both setting and checking the index binding with this.
decltype(auto) getDynamicBinding() | ||
{ | ||
static_assert(std::is_same_v<decltype(&(static_cast<B*>(this)->mColumnIterator)), std::decay_t<decltype(B::mColumnIterator)>*>, "foo"); | ||
static_assert(std::same_as<decltype(&(static_cast<B*>(this)->mColumnIterator)), std::decay_t<decltype(B::mColumnIterator)>*>, "foo"); |
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 shouuld be moved in the requirements in the next iteration.
return &(static_cast<B*>(this)->mColumnIterator); | ||
//return static_cast<std::decay_t<decltype(B::mColumnIterator)>*>(nullptr); | ||
// return static_cast<std::decay_t<decltype(B::mColumnIterator)>*>(nullptr); |
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.
Drop the comment in the next iteration.
Thank you, amazing work. I tested on hyperloop and it seems to work as before. I will wait for the tests and then we can merge. That said, how come we have 30% more code after the rewrite? I thought the whole goal was to have less code to review, not more. Is there any other cleanup we could do that was hold back? Did you check the compile times? |
Most of the extra code comes from separating pieces with a lot of I have not measured the compile time for O2Physics, for O2 itself it seems to be only slightly less, since not many things depend on ASoA. |
Sounds good. Let's merge this and start removing what can be removed. |
Draft until AliceO2Group/O2Physics#8322 is merged.