Bug #1541863: uuid.uuid1 failed to generate unique identifiers

on systems with low clock resolution.
This commit is contained in:
Martin v. Löwis 2006-08-18 03:47:18 +00:00
parent 59e9ac8ebe
commit 2eb8c4f292
3 changed files with 14 additions and 3 deletions

View File

@ -429,7 +429,7 @@ class TestUUID(TestCase):
# Make sure the generated UUIDs are actually unique.
uuids = {}
for u in [uuid.uuid1() for i in range(1000)]:
for u in [uuid.uuid4() for i in range(1000)]:
uuids[u] = 1
equal(len(uuids.keys()), 1000)

View File

@ -488,8 +488,8 @@ def uuid1(node=None, clock_seq=None):
# 0x01b21dd213814000 is the number of 100-ns intervals between the
# UUID epoch 1582-10-15 00:00:00 and the Unix epoch 1970-01-01 00:00:00.
timestamp = int(nanoseconds/100) + 0x01b21dd213814000L
if timestamp == _last_timestamp:
timestamp += 1
if timestamp <= _last_timestamp:
timestamp = _last_timestamp + 1
_last_timestamp = timestamp
if clock_seq is None:
import random

View File

@ -4,6 +4,17 @@ Python News
(editors: check NEWS.help for information about editing NEWS using ReST.)
What's New in Python 2.5?
=========================
*Release date: XX-SEP-2006*
Library
-------
- Bug #1541863: uuid.uuid1 failed to generate unique identifiers
on systems with low clock resolution.
What's New in Python 2.5 release candidate 1?
=============================================