pgsql: Some infrastructure changes for the upcoming auto-explain contrib

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Some infrastructure changes for the upcoming auto-explain contrib
Date: 2008-11-19 01:10:24
Message-ID: 20081119011024.2A9777545A4@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Some infrastructure changes for the upcoming auto-explain contrib module:

* Refactor explain.c slightly to export a convenient-to-use subroutine
for printing EXPLAIN results.

* Provide hooks for plugins to get control at ExecutorStart and ExecutorEnd
as well as ExecutorRun.

* Add some minimal support for tracking the total runtime of ExecutorRun.
This code won't actually do anything unless a plugin prods it to.

* Change the API of the DefineCustomXXXVariable functions to allow nonzero
"flags" to be specified for a custom GUC variable. While at it, also make
the "bootstrap" default value for custom GUCs be explicitly specified as a
parameter to these functions. This is to eliminate confusion over where the
default comes from, as has been expressed in the past by some users of the
custom-variable facility.

* Refactor GUC code a bit to ensure that a custom variable gets initialized to
something valid (like its default value) even if the placeholder value was
invalid.

Modified Files:
--------------
pgsql/src/backend/commands:
explain.c (r1.180 -> r1.181)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/explain.c?r1=1.180&r2=1.181)
pgsql/src/backend/executor:
execMain.c (r1.317 -> r1.318)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execMain.c?r1=1.317&r2=1.318)
pgsql/src/backend/tcop:
pquery.c (r1.124 -> r1.125)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/pquery.c?r1=1.124&r2=1.125)
pgsql/src/backend/utils/misc:
guc.c (r1.477 -> r1.478)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c?r1=1.477&r2=1.478)
pgsql/src/include/commands:
explain.h (r1.35 -> r1.36)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/explain.h?r1=1.35&r2=1.36)
pgsql/src/include/executor:
execdesc.h (r1.37 -> r1.38)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/executor/execdesc.h?r1=1.37&r2=1.38)
executor.h (r1.152 -> r1.153)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/executor/executor.h?r1=1.152&r2=1.153)
pgsql/src/include/utils:
guc.h (r1.98 -> r1.99)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/guc.h?r1=1.98&r2=1.99)
guc_tables.h (r1.43 -> r1.44)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/guc_tables.h?r1=1.43&r2=1.44)
pgsql/src/pl/plperl:
plperl.c (r1.141 -> r1.142)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plperl/plperl.c?r1=1.141&r2=1.142)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2008-11-19 02:07:08 pgsql: Fix define_custom_variable so that SUSET custom variables behave
Previous Message User Achernow 2008-11-18 21:45:09 libpqtypes - libpqtypes: configure fixes and memalign cleanup