Skip to content

[636][io] use UUIDv4 in ROOT files#22064

Merged
dpiparo merged 6 commits intoroot-project:v6-36-00-patchesfrom
dpiparo:bp_22035_636
Apr 26, 2026
Merged

[636][io] use UUIDv4 in ROOT files#22064
dpiparo merged 6 commits intoroot-project:v6-36-00-patchesfrom
dpiparo:bp_22035_636

Conversation

@dpiparo
Copy link
Copy Markdown
Member

@dpiparo dpiparo commented Apr 25, 2026

BP of #22035 (by hand, some conflicts needed resolution).

jblomer added 6 commits April 25, 2026 18:01
(cherry picked from commit 7865c27)
(cherry picked from commit e9292b8)
Use UUIDv4 in TDirectory (hence in TDirectoryFile and TFile) and in the
RMiniFile. Note that TDirectory is used without gSystem (needed for
GetCryptoRandom()) in the context of rootcling.  In principle,
GetCryptoRandom() should work without a TSystem object.  That may be for
a later commit.

The UUIDv4, unlike the current UUIDv1, is (with high enough probability)
globally unique.

(cherry picked from commit b387638)
Factor out calling the OS crypto random number generator into a free
function in the Base package. In turn, TSystem::GetCryptoRandom() can be
static and does not rely in gSystem being initialized.

(cherry picked from commit f20d779)
@dpiparo dpiparo self-assigned this Apr 25, 2026
@dpiparo dpiparo requested review from bellenot and pcanal as code owners April 25, 2026 20:02
@github-actions
Copy link
Copy Markdown

Test Results

    17 files      17 suites   2d 9h 28m 17s ⏱️
 2 746 tests  2 745 ✅  1 💤 0 ❌
45 236 runs  45 224 ✅ 12 💤 0 ❌

Results for commit 5c1133b.

@dpiparo dpiparo merged commit 0ddc0da into root-project:v6-36-00-patches Apr 26, 2026
20 of 22 checks passed
@dpiparo dpiparo deleted the bp_22035_636 branch April 26, 2026 06:32
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.

2 participants