Skip to content

Conversation

@ferdymercury
Copy link
Collaborator

@ferdymercury ferdymercury commented Mar 14, 2024

This Pull request:

Changes or fixes:

Fixes https://its.cern.ch/jira/browse/ROOT-9028

Checklist:

  • tested changes locally
  • updated the docs (if necessary)

@ferdymercury ferdymercury requested a review from pcanal as a code owner March 14, 2024 14:26
@phsft-bot

This comment was marked as outdated.

@pcanal

This comment was marked as outdated.

@ferdymercury

This comment was marked as outdated.

@github-actions
Copy link

github-actions bot commented Mar 14, 2024

Test Results

    21 files      21 suites   3d 7h 35m 42s ⏱️
 3 211 tests  3 211 ✅ 0 💤 0 ❌
65 699 runs  65 699 ✅ 0 💤 0 ❌

Results for commit 3ef0516.

♻️ This comment has been updated with latest results.

Copy link
Member

@vepadulano vepadulano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes look good, but we cannot merge this without a test of the use case before/after this patch

@pcanal

This comment was marked as outdated.

@ferdymercury

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

vepadulano

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

3 similar comments
@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@ferdymercury ferdymercury requested a review from vepadulano March 21, 2024 17:01
@ferdymercury
Copy link
Collaborator Author

@vepadulano @pcanal I just noticed that all the 31 bit ugly stuff was due to an outdated documentation. It's no longer the case, minor and major have now independent variables both 64-bits. So this simplifies things significantly.
See 19b0ca5

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@phsft-bot

This comment was marked as outdated.

@ferdymercury
Copy link
Collaborator Author

fyi @TomasDado this PR is 'stalled' since I am not able to figure out a way to make the test pass in all platforms at the same time.

If this is urgently needed, the change 'just' in the source code could be in principle decoupled from the test in my opinion, since, even if the change is not perfect, it improves things.

@TomasDado
Copy link
Contributor

Thanks for the ping @ferdymercury. Maybe it helps if I give some information to the best of my knowledge regarding this issue and ATLAS. We definitely have data periods where the eventNumber (msot commonly used for building the index) exceeds 2^32 thus we also store it as a 64 bit integer. However, I have never seen a need to build the index for data events, this this might not be an urgent issues, althought theoretically it is a problem for data. For MC, where the indexing functionality is definitely used, I am not aware of any sample exceeding 2^32 events although I think we are not that far (~1B events I have seen). Thus, I do not think the issue is urgent, but it might become urgent in the near future if we extend our MC samples.

@ferdymercury ferdymercury marked this pull request as ready for review July 11, 2025 16:08
@ferdymercury ferdymercury requested a review from dpiparo as a code owner July 11, 2025 16:08
… old legacy interface

Fixes https://its.cern.ch/jira/browse/ROOT-9028

[treeindex] print error when requesting out of bonds combination

31bit restriction was old, now they have separate 64-bit registers

better document old2new
[test] disable tests reaching the limits of ulong64_t

since the implicit conversion to long double later leads to platform-dependent test failures
@ferdymercury
Copy link
Collaborator Author

@pcanal I would suggest merging this PR 'as is'. The cross-platform compatibility limits of these functions have now been clearly documented, and the tests were simplified to the least common factor.

This improves the current situation, instead of using just a maximum of 32 bits, now we can use up to 52 bits, and the documentation informs you about that.

Co-authored-by: Philippe Canal <[email protected]>
@ferdymercury ferdymercury requested a review from guitargeek July 23, 2025 11:27
@pcanal pcanal merged commit d23b905 into root-project:master Jul 29, 2025
22 of 24 checks passed
@ferdymercury ferdymercury deleted the majorminor branch July 30, 2025 06:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants