Skip site navigation (1) Skip section navigation (2)

pgsql-server/ oc/src/sgml/runtime.sgml rc/back ...

From: tgl(at)svr1(dot)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql-server/ oc/src/sgml/runtime.sgml rc/back ...
Date: 2004-01-23 23:54:21
Message-ID: 20040123235421.98320D1E8B2@svr1.postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
CVSROOT:	/cvsroot
Module name:	pgsql-server
Changes by:	tgl(at)svr1(dot)postgresql(dot)org	04/01/23 19:54:21

Modified files:
	doc/src/sgml   : runtime.sgml 
	src/backend/optimizer/geqo: geqo_eval.c geqo_main.c geqo_pool.c 
	                            geqo_recombination.c 
	src/backend/utils/misc: guc.c postgresql.conf.sample 
	src/include/optimizer: geqo.h geqo_pool.h 

Log message:
	Revise GEQO planner to make use of some heuristic knowledge about SQL, namely
	that it's good to join where there are join clauses rather than where there
	are not.  Also enable it to generate bushy plans at need, so that it doesn't
	fail in the presence of multiple IN clauses containing sub-joins.  These
	changes appear to improve the behavior enough that we can substantially reduce
	the default pool size and generations count, thereby decreasing the runtime,
	and yet get as good or better plans as we were getting in 7.4.  Consequently,
	adjust the default GEQO parameters.  I also modified the way geqo_effort is
	used so that it affects both population size and number of generations;
	it's now useful as a single control to adjust the GEQO runtime-vs-plan-quality
	tradeoff.  Bump geqo_threshold to 12, since even with these changes GEQO
	seems to be slower than the regular planner at 11 relations.


pgsql-committers by date

Next:From: Tom LaneDate: 2004-01-24 00:37:28
Subject: pgsql-server/src/backend/optimizer/path joinrels.c
Previous:From: Bruce MomjianDate: 2004-01-23 15:13:30
Subject: pgsql-server/doc TODO

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group