On Sat, Feb 12, 2011 at 3:15 AM, Paul McMillan <[email protected]> wrote:
> Sorry, I stuffed up some of the numbers.
>
> MD5 is 128 bits equivalent value. UUID4 is 113. A table with enough
> content to cause collisions for 10k input values would probably be in
> the exabyte range, but the point still stands. Cache timeouts are
> causing this problem.
>
> -Paul
>

An md5 hash of pure random data might have 128 bits of purely random
data, but our md5 hashes aren't formulated like that. I don't know
what difference that makes...

UUID-4, as per the python implementation, is 122 bits of randomness, 4
bits are used for version, 2 for variant - I'm not sure where you are
getting 103/113 bits from.

I still haven't updated the patch to remove the code smell that is the
10k loop testing whether your cache is available. From what you've
said, it seems unlikely that md5 collisions are occurring in that
number, so I'll update it to remove that loop, and change the error
message to indicate that it is the cache that is failing.

Cheers

Tom

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to