Re: pgbench - add pseudo-random permutation function

Поиск
Список
Период
Сортировка
От Hironobu SUZUKI
Тема Re: pgbench - add pseudo-random permutation function
Дата
Msg-id 29821e16-2877-4681-c9fd-3b3fdbfe089d@interdb.jp
обсуждение исходный текст
Ответ на Re: pgbench - add pseudo-random permutation function  (Fabien COELHO <coelho@cri.ensmp.fr>)
Ответы Re: pgbench - add pseudo-random permutation function
Список pgsql-hackers
Hello,

 > Also, the alternate implementation should not change the result, so
 > something looks amiss in your version. Moreover, I'm unclear how to
 > implement an overflow multiply with the safe no overflow version.
(snip)

I made an honest mistake. I had assumed the modulo number of Knuth's LCG 
is (2 ^ 64 - 1).


BTW, I found other overflow issue.
In pseudorandom_perm(), `modular_multiply() + (key >> LCG_SHIFT)` may 
overflow if the result of modular_multiply() is large. Therefore, I've 
improved it.

Also, I've simplified Step 5 in modular_multiply().


I attached pgbench-prp-func-9.patch.

Best regards,

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Laurenz Albe
Дата:
Сообщение: Re: Function to promote standby servers
Следующее
От: Andrey Lepikhov
Дата:
Сообщение: Re: Making all nbtree entries unique by having heap TIDs participatein comparisons