pg.ddx.io pgsql-committers@postgresql.org mailing list archive
help / color / mirror / Atom feedpgsql: Make GEQO's planning deterministic by having it start from a
2+ messages / 2 participants
[nested] [flat]
* pgsql: Make GEQO's planning deterministic by having it start from a
@ 2009-07-16 20:55 Tom Lane <tgl@postgresql.org>
0 siblings, 0 replies; 2+ messages in thread
From: tgl@postgresql.org @ 2009-07-16 20:55 UTC (permalink / raw)
To: pgsql-committers
Log Message:
-----------
Make GEQO's planning deterministic by having it start from a predictable
random number seed each time. This is how it used to work years ago, but
we got rid of the seed reset because it was resetting the main random()
sequence and thus having undesirable effects on the rest of the system.
To fix, establish a private random number state for each execution of
geqo(), and initialize the state using the new GUC variable geqo_seed.
People who want to experiment with different random searches can do so
by changing geqo_seed, but you'll always get the same plan for the same
value of geqo_seed (if holding all other planner inputs constant, of course).
The new state is kept in PlannerInfo by adding a "void *" field reserved
for use by join_search hooks. Most of the rather bulky code changes in
this commit are just arranging to pass PlannerInfo around to all the GEQO
functions (many of which formerly didn't receive it).
Andres Freund, with some editorialization by Tom
Modified Files:
--------------
pgsql/doc/src/sgml:
config.sgml (r1.221 -> r1.222)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/config.sgml?r1=1.221&r2=1.222)
geqo.sgml (r1.40 -> r1.41)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/geqo.sgml?r1=1.40&r2=1.41)
pgsql/src/backend/optimizer/geqo:
Makefile (r1.20 -> r1.21)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/Makefile?r1=1.20&r2=1....)
geqo_copy.c (r1.19 -> r1.20)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_copy.c?r1=1.19&r2...)
geqo_cx.c (r1.10 -> r1.11)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_cx.c?r1=1.10&r2=1...)
geqo_erx.c (r1.20 -> r1.21)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_erx.c?r1=1.20&r2=...)
geqo_eval.c (r1.88 -> r1.89)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_eval.c?r1=1.88&r2...)
geqo_main.c (r1.56 -> r1.57)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_main.c?r1=1.56&r2...)
geqo_mutation.c (r1.9 -> r1.10)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_mutation.c?r1=1.9&...)
geqo_ox1.c (r1.9 -> r1.10)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_ox1.c?r1=1.9&r2=1...)
geqo_ox2.c (r1.10 -> r1.11)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_ox2.c?r1=1.10&r2=...)
geqo_pmx.c (r1.10 -> r1.11)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_pmx.c?r1=1.10&r2=...)
geqo_pool.c (r1.33 -> r1.34)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_pool.c?r1=1.33&r2...)
geqo_px.c (r1.10 -> r1.11)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_px.c?r1=1.10&r2=1...)
geqo_recombination.c (r1.15 -> r1.16)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_recombination.c?r1=1....)
geqo_selection.c (r1.24 -> r1.25)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_selection.c?r1=1.24&a...)
pgsql/src/backend/utils/misc:
guc.c (r1.507 -> r1.508)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c?r1=1.507&r2=1.508)
postgresql.conf.sample (r1.261 -> r1.262)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/postgresql.conf.sample?r1=1.26...)
pgsql/src/include/nodes:
relation.h (r1.173 -> r1.174)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/relation.h?r1=1.173&r2=1.174)
pgsql/src/include/optimizer:
geqo.h (r1.44 -> r1.45)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo.h?r1=1.44&r2=1.45)
geqo_copy.h (r1.21 -> r1.22)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo_copy.h?r1=1.21&r2=1.22)
geqo_mutation.h (r1.21 -> r1.22)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo_mutation.h?r1=1.21&r2=...)
geqo_pool.h (r1.25 -> r1.26)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo_pool.h?r1=1.25&r2=1.26)
geqo_random.h (r1.21 -> r1.22)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo_random.h?r1=1.21&r2=1....)
geqo_recombination.h (r1.20 -> r1.21)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo_recombination.h?r1=1.20&am...)
geqo_selection.h (r1.21 -> r1.22)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/geqo_selection.h?r1=1.21&r2...)
Added Files:
-----------
pgsql/src/backend/optimizer/geqo:
geqo_random.c (r1.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_random.c?rev=1.1&...)
^ permalink raw reply [nested|flat] 2+ messages in thread
* pgsql: Fix PDF doc generation.
@ 2024-03-17 14:50 Dean Rasheed <dean.a.rasheed@gmail.com>
0 siblings, 0 replies; 2+ messages in thread
From: Dean Rasheed @ 2024-03-17 14:50 UTC (permalink / raw)
To: pgsql-committers@lists.postgresql.org
Fix PDF doc generation.
Commit c649fa24a4 broke PDF generation, due to a misplaced id
attribute.
Per buildfarm member crake.
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/7eb9a8201890f3b208fd4c109a5b08bf139b692a
Modified Files
--------------
doc/src/sgml/func.sgml | 4 ++--
doc/src/sgml/ref/merge.sgml | 17 +++++++++--------
2 files changed, 11 insertions(+), 10 deletions(-)
^ permalink raw reply [nested|flat] 2+ messages in thread
end of thread, other threads:[~2024-03-17 14:50 UTC | newest]
Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2009-07-16 20:55 pgsql: Make GEQO's planning deterministic by having it start from a Tom Lane <tgl@postgresql.org>
2024-03-17 14:50 pgsql: Fix PDF doc generation. Dean Rasheed <dean.a.rasheed@gmail.com>
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox