Обсуждение: pgsql: Improve implementation of GEQO's init_tour() function.

Поиск
Список
Период
Сортировка

pgsql: Improve implementation of GEQO's init_tour() function.

От
Tom Lane
Дата:
Improve implementation of GEQO's init_tour() function.

Rather than filling a temporary array and then copying values to the
output array, we can generate the required random permutation in-place
using the Fisher-Yates shuffle algorithm.  This is shorter as well as
more efficient than before.  It's pretty unlikely that anyone would
notice a speed improvement, but shorter code is better.

Nathan Wagner, edited a bit by me

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/59464bd6f928ad0da30502cbe9b54baec9ca2c69

Modified Files
--------------
src/backend/optimizer/geqo/geqo_recombination.c |   44 ++++++++++-------------
1 file changed, 19 insertions(+), 25 deletions(-)