1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-28 23:42:10 +03:00

Cause the output from debug_print_parse, debug_print_rewritten, and

debug_print_plan to appear at LOG message level, not DEBUG1 as historically.
Make debug_pretty_print default to on.  Also, cause plans generated via
EXPLAIN to be subject to debug_print_plan.  This is all to make
debug_print_plan a reasonably comfortable substitute for the former behavior
of EXPLAIN VERBOSE.
This commit is contained in:
Tom Lane
2008-08-19 18:30:04 +00:00
parent 2aaca8e314
commit 9650830bc8
5 changed files with 40 additions and 28 deletions

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/config.sgml,v 1.185 2008/08/15 08:37:41 mha Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/config.sgml,v 1.186 2008/08/19 18:30:04 tgl Exp $ -->
<chapter Id="runtime-config">
<title>Server Configuration</title>
@ -2817,7 +2817,6 @@ local0.* /var/log/postgresql
<term><varname>debug_print_parse</varname> (<type>boolean</type>)</term>
<term><varname>debug_print_rewritten</varname> (<type>boolean</type>)</term>
<term><varname>debug_print_plan</varname> (<type>boolean</type>)</term>
<term><varname>debug_pretty_print</varname> (<type>boolean</type>)</term>
<indexterm>
<primary><varname>debug_print_parse</> configuration parameter</primary>
</indexterm>
@ -2827,21 +2826,34 @@ local0.* /var/log/postgresql
<indexterm>
<primary><varname>debug_print_plan</> configuration parameter</primary>
</indexterm>
<listitem>
<para>
These parameters enable various debugging output to be emitted.
When set, they print the resulting parse tree, the query rewriter
output, or the execution plan for each executed query.
These messages are emitted at <literal>LOG</> message level, so by
default they will appear in the server log but will not be sent to the
client. You can change that by adjusting
<xref linkend="guc-client-min-messages"> and/or
<xref linkend="guc-log-min-messages">.
These parameters are off by default.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>debug_pretty_print</varname> (<type>boolean</type>)</term>
<indexterm>
<primary><varname>debug_pretty_print</> configuration parameter</primary>
</indexterm>
<listitem>
<para>
These parameters enable various debugging output to be emitted.
For each executed query, they print
the resulting parse tree, the query rewriter output, or the
execution plan. <varname>debug_pretty_print</varname> indents
these displays to produce a more readable but much longer
output format. <varname>client_min_messages</varname> or
<varname>log_min_messages</varname> must be
<literal>DEBUG1</literal> or lower to actually send this output
to the client or the server log, respectively.
These parameters are off by default.
When set, <varname>debug_pretty_print</varname> indents the messages
produced by <varname>debug_print_parse</varname>,
<varname>debug_print_rewritten</varname>, or
<varname>debug_print_plan</varname>. This results in more readable
but much longer output than the <quote>compact</> format used when
it is off. It is on by default.
</para>
</listitem>
</varlistentry>