Custom shuffle function stopped working in 9.6

From: Alexander Farber <alexander(dot)farber(at)gmail(dot)com>
To: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Custom shuffle function stopped working in 9.6
Date: 2017-02-11 16:37:27
Message-ID: CAADeyWh+PcpcObFNEEtL6XSOh2LY-RuFtewTCsk=Ba0djj58Pg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Good evening,

after switching to 9.6.2 from 9.5.3 the following custom function has
stopped working:

CREATE OR REPLACE FUNCTION words_shuffle(in_array varchar[])
RETURNS varchar[] AS
$func$
SELECT array_agg(letters.x) FROM
(SELECT UNNEST(in_array) x ORDER BY RANDOM()) letters;
$func$ LANGUAGE sql STABLE;

In 9.5.3 it was shuffling characters:

words=> select words_shuffle(ARRAY['a','b','c','d','e','f']);
words_shuffle
---------------
{c,d,b,a,e,f}
(1 row)

But in 9.6.2 it has stopped doing so:
words=> select words_shuffle(ARRAY['a','b','c','d','e','f']);
words_shuffle
---------------
{a,b,c,d,e,f}
(1 row)

Any suggestions for a better shuffling function please?

Regards
Alex

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Pavel Stehule 2017-02-11 16:51:02 Re: Custom shuffle function stopped working in 9.6
Previous Message Sylvain Marechal 2017-02-11 12:13:14 Re: BDR problem rejoining node