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

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: (view raw, whole thread or download thread mbox)
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

Modified Files:
        explain.c (r1.180 -> r1.181)
        execMain.c (r1.317 -> r1.318)
        pquery.c (r1.124 -> r1.125)
        guc.c (r1.477 -> r1.478)
        explain.h (r1.35 -> r1.36)
        execdesc.h (r1.37 -> r1.38)
        executor.h (r1.152 -> r1.153)
        guc.h (r1.98 -> r1.99)
        guc_tables.h (r1.43 -> r1.44)
        plperl.c (r1.141 -> r1.142)

pgsql-committers by date

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

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