on our system there's different routines from different languages (mainly C++ and python) interacting on same database tables.
In python, uuid1 implementation (MAC+time in ns) is my favorite since it reduce greatly the (low but still present) collision risk. MAC address disclosing is not a problem in our context.
But AFAIK, C++ implementation, with Boost lib for instance, is only uuid4 equivalent (pseudo-random).
Given that implementation between uuid4 in python and C++ (or Java if we also introduce it in the future) might be very different, I suspect that it could greatly increase collision risks.
Would you mix python's uuid1 and C++/Boost uuid4 ?
or go to uuid4 on both language ?
or go to uuid1 on both with another lib than Boost...
p.s.
a proposed "duplicate question" do not address my question since NEWID and Guid.Comb are not uuid1 nor uuid4 compliant (they mix time-based and pseudo-random bytes)