diff options
Diffstat (limited to 'src/backend/utils/adt/misc.c')
-rw-r--r-- | src/backend/utils/adt/misc.c | 71 |
1 files changed, 1 insertions, 70 deletions
diff --git a/src/backend/utils/adt/misc.c b/src/backend/utils/adt/misc.c index 6b105fdef4d..1f85e4f4992 100644 --- a/src/backend/utils/adt/misc.c +++ b/src/backend/utils/adt/misc.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/misc.c,v 1.27 2002/09/04 20:31:28 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/misc.c,v 1.28 2003/02/13 05:24:02 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -44,75 +44,6 @@ nonnullvalue(PG_FUNCTION_ARGS) } /* - * oidrand (oid o, int4 X)- - * Takes in an oid and a int4 X, and will return 'true' about 1/X of - * the time. If X == 0, this will always return true. - * Useful for doing random sampling or subsetting. - * - * Example use: - * select * from TEMP where oidrand(TEMP.oid, 10) - * will return about 1/10 of the tuples in TEMP - * - * NOTE: the OID input is not used at all. It is there just because of - * an old optimizer bug: a qual expression containing no variables was - * mistakenly assumed to be a constant. Pretending to access the row's OID - * prevented the optimizer from treating the oidrand() result as constant. - */ - -static bool random_initialized = false; - -Datum -oidrand(PG_FUNCTION_ARGS) -{ -#ifdef NOT_USED - Oid o = PG_GETARG_OID(0); -#endif - int32 X = PG_GETARG_INT32(1); - bool result; - - if (X == 0) - PG_RETURN_BOOL(true); - - /* - * We do this because the cancel key is actually a random, so we don't - * want them to be able to request random numbers using our postmaster - * seeded value. - */ - if (!random_initialized) - { - srandom((unsigned int) time(NULL)); - random_initialized = true; - } - - result = (random() % X == 0); - PG_RETURN_BOOL(result); -} - -/* - oidsrand(int32 X) - - seeds the random number generator - always returns true -*/ -Datum -oidsrand(PG_FUNCTION_ARGS) -{ - int32 X = PG_GETARG_INT32(0); - - srandom((unsigned int) X); - random_initialized = true; - PG_RETURN_BOOL(true); -} - - -Datum -userfntest(PG_FUNCTION_ARGS) -{ - int32 i = PG_GETARG_INT32(0); - - PG_RETURN_INT32(i); -} - -/* * current_database() * Expose the current database to the user */ |