1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-28 23:42:10 +03:00

Document and enforce that the usable range of setseed() arguments is

-1 to 1, not 0 to 1.  The actual behavior for values within this range
does not change.  Kris Jurka
This commit is contained in:
Tom Lane
2008-03-10 12:39:23 +00:00
parent bfce56eea4
commit 23c356ccec
4 changed files with 12 additions and 8 deletions

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/utils/adt/float.c,v 1.153 2008/01/01 19:45:52 momjian Exp $
* $PostgreSQL: pgsql/src/backend/utils/adt/float.c,v 1.154 2008/03/10 12:39:22 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@ -1684,8 +1684,12 @@ Datum
setseed(PG_FUNCTION_ARGS)
{
float8 seed = PG_GETARG_FLOAT8(0);
int iseed = (int) (seed * MAX_RANDOM_VALUE);
int iseed;
if (seed < -1 || seed > 1)
elog(ERROR, "setseed parameter %f out of range [-1,1]", seed);
iseed = (int) (seed * MAX_RANDOM_VALUE);
srandom((unsigned int) iseed);
PG_RETURN_VOID();

View File

@ -10,7 +10,7 @@
* Written by Peter Eisentraut <peter_e@gmx.net>.
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.435 2008/03/10 03:22:29 tgl Exp $
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.436 2008/03/10 12:39:23 tgl Exp $
*
*--------------------------------------------------------------------
*/
@ -1849,7 +1849,7 @@ static struct config_real ConfigureNamesReal[] =
GUC_NO_SHOW_ALL | GUC_NO_RESET_ALL | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
},
&phony_random_seed,
0.5, 0.0, 1.0, assign_random_seed, show_random_seed
0.0, -1.0, 1.0, assign_random_seed, show_random_seed
},
{