<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.203 2003/09/05 16:13:38 tgl Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.204 2003/09/07 15:26:45 tgl Exp $
-->
<Chapter Id="runtime">
<term><varname>GEQO_EFFORT</varname> (<type>integer</type>)</term>
<term><varname>GEQO_GENERATIONS</varname> (<type>integer</type>)</term>
<term><varname>GEQO_POOL_SIZE</varname> (<type>integer</type>)</term>
- <term><varname>GEQO_RANDOM_SEED</varname> (<type>integer</type>)</term>
<term><varname>GEQO_SELECTION_BIAS</varname> (<type>floating point</type>)</term>
<listitem>
<para>
is roughly proportional to the sum of pool size and generations.
The selection bias is the selective pressure within the
population. Values can be from 1.50 to 2.00; the latter is the
- default. The random seed can be set to get reproducible results
- from the algorithm. If it is set to -1 then the algorithm
- behaves non-deterministically.
+ default.
</para>
</listitem>
</varlistentry>
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Header: /cvsroot/pgsql/src/backend/optimizer/geqo/geqo_main.c,v 1.39 2003/08/12 18:23:20 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/geqo/geqo_main.c,v 1.40 2003/09/07 15:26:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
int Geqo_effort;
int Geqo_generations;
double Geqo_selection_bias;
-int Geqo_random_seed;
static int gimme_pool_size(int nr_rel);
number_generations = gimme_number_generations(pool_size, Geqo_effort);
status_interval = 10;
-/* seed random number generator */
-/* XXX why is this done every time around? */
- if (Geqo_random_seed >= 0)
- srandom((unsigned int) Geqo_random_seed);
- else
- srandom((unsigned int) time(NULL));
-
/* allocate genetic pool memory */
pool = alloc_pool(pool_size, number_of_rels);
* Written by Peter Eisentraut <peter_e@gmx.net>.
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.155 2003/09/04 05:11:20 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.156 2003/09/07 15:26:53 tgl Exp $
*
*--------------------------------------------------------------------
*/
&Geqo_generations,
0, 0, INT_MAX, NULL, NULL
},
- {
- {"geqo_random_seed", PGC_USERSET, QUERY_TUNING_GEQO,
- gettext_noop("Can be set to get reproducible results from the algorithm"),
- gettext_noop("If it is set to -1 then the algorithm behaves "
- "non-deterministically")
- },
- &Geqo_random_seed,
- -1, INT_MIN, INT_MAX, NULL, NULL
- },
{
{"deadlock_timeout", PGC_SIGHUP, LOCK_MANAGEMENT,
#geqo_generations = 0
#geqo_pool_size = 0 # default based on tables in statement,
# range 128-1024
-#geqo_random_seed = -1 # -1 = use variable seed
#geqo_selection_bias = 2.0 # range 1.5-2.0
# - Other Planner Options -
*
* Copyright (c) 2000-2003, PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.84 2003/08/04 23:59:40 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.85 2003/09/07 15:26:54 tgl Exp $
*/
/*----------------------------------------------------------------------
"geqo_effort",
"geqo_generations",
"geqo_pool_size",
- "geqo_random_seed",
"geqo_selection_bias",
"geqo_threshold",
"join_collapse_limit",
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: geqo.h,v 1.31 2003/08/04 02:40:13 momjian Exp $
+ * $Id: geqo.h,v 1.32 2003/09/07 15:26:54 tgl Exp $
*
*-------------------------------------------------------------------------
*/
#define MIN_GEQO_SELECTION_BIAS 1.5
#define MAX_GEQO_SELECTION_BIAS 2.0
-extern int Geqo_random_seed; /* or negative to use current time */
-
/* routines in geqo_main.c */
extern RelOptInfo *geqo(Query *root, int number_of_rels, List *initial_rels);