On 2010-01-29, Joe Kramer wrote: > Thanks for the answer, > > I am unable to use ossp_uuid due to package install and/or server > rebuild requirement. > > So I am trying to roll my own, and > digest(quote_literal(random()+random()), 'sha256'), 'hex') doesn't work: > Your input value is a random number, those aren't supposed to be unique within any predictable number of iterations. Moreover I'd suspect, that random() + random() significantly increases the probability to create duplicated values due to the properties of the add-operation. In the simplest example, the first invocation may return random number 3, the second one random number 5 creating an input of 8 for the digest-function. Another outcome of the random number generator may yield 7 and 1 giving the same input. I'd suggest to use some kind of sequence or something constructed from the primary keys. But you may still see hash collisions although the input is different. -- Robert... -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general