Re: Random not so random
От | D. Stimits |
---|---|
Тема | Re: Random not so random |
Дата | |
Msg-id | 41615CAD.90009@comcast.net обсуждение исходный текст |
Ответ на | Re: Random not so random (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Random not so random
|
Список | pgsql-general |
Tom Lane wrote: > "Arnau Rebassa" <arebassa@hotmail.com> writes: > >> I'm using a debian linux as OS with a 2.4 kernel running on it. > > >>>Incidentally, are you reconnecting every time or is it that multiple calls >>>in a single session are returning the same record? > > >> I'm reconnecting each time I want to retrieve a message. > > > Hmm. postmaster.c does this during startup of each backend process: > > gettimeofday(&now, &tz); > srandom((unsigned int) now.tv_usec); If it uses the same seed from the connection, then all randoms within a connect that has not reconnected will use the same seed. Which means the same sequence will be generated each time, which is why it is pseudo-random and not random. For it to be random not just the first call of a new connection, but among all calls of new connection, it would have to seed it based on time at the moment of query and not at the moment of connect. A pseudo-random generator using the same seed will generate the same sequence. D. Stimits, stimits AT comcast DOT net
В списке pgsql-general по дате отправления: