Standardize uuid generation for events/storage/registry (#39184)

This commit is contained in:
J. Nick Koston 2020-08-24 10:21:30 -05:00 committed by GitHub
parent 28332f23b3
commit bee6d87e7a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 34 additions and 15 deletions

View file

@ -0,0 +1,15 @@
"""Helpers to generate uuids."""
import random
import uuid
def uuid_v1mc_hex() -> str:
"""Generate a uuid1 with a random multicast MAC address.
The uuid1 uses a random multicast MAC address instead of the real MAC address
of the machine without the overhead of calling the getrandom() system call.
This is effectively equivalent to PostgreSQL's uuid_generate_v1mc() function
"""
return uuid.uuid1(node=random.getrandbits(48) | (1 << 40)).hex