[issue8621] uuid.uuid4() generates non-unique values on OSX

Stefan Krah report at bugs.python.org
Tue Jun 22 11:45:30 CEST 2010


Stefan Krah <stefan-usenet at bytereef.org> added the comment:

It is disputed on http://openradar.appspot.com/radar?id=334401 that
this is an OS bug. If I understand correctly, the test program is
not guaranteed to work if threads are involved. See also:

http://webcache.googleusercontent.com/search?q=cache:hJo0u_Lc8wkJ:www.opengroup.org/onlinepubs/000095399/functions/fork.html+http://www.opengroup.org/onlinepubs/009695399/functions/fork.html&hl=en&strip=1


"A process shall be created with a single thread. If a multi-threaded process calls fork(), the new process shall contain a replica of the calling thread and its entire address space, possibly including the states of mutexes and other resources. Consequently, to avoid errors, the child process may only execute async-signal-safe operations until such time as one of the exec functions is called. [THR] [Option Start]  Fork handlers may be established by means of the pthread_atfork() function in order to maintain application invariants across fork() calls."


This could explain why running the complete test suite fails but
running the individual test does not.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue8621>
_______________________________________


More information about the Python-bugs-list mailing list