Home Explore Blog CI



postgresql

4th chunk of `doc/src/sgml/ref/explain.sgml`
c072bde6cf8e556feb8d0bb5ded6faef1150055be4b63f3b0000000100000fa0
 specified, the appropriate
      conversions are performed, and the time spent doing so is measured
      (unless <literal>TIMING OFF</literal> is specified).  If
      the <literal>BUFFERS</literal> option is also specified, then any
      buffer accesses involved in the conversions are counted too.
      In no case, however, will <command>EXPLAIN</command> actually send
      the resulting data to the client; hence network transmission costs
      cannot be investigated this way.
      Serialization may only be enabled when <literal>ANALYZE</literal> is
      also enabled.  If <literal>SERIALIZE</literal> is written without an
      argument, <literal>TEXT</literal> is assumed.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>WAL</literal></term>
    <listitem>
     <para>
      Include information on WAL record generation. Specifically, include the
      number of records, number of full page images (fpi), the amount of WAL
      generated in bytes and the number of times the WAL buffers became full.
      In text format, only non-zero values are printed.
      This parameter may only be used when <literal>ANALYZE</literal> is also
      enabled.  It defaults to <literal>FALSE</literal>.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>TIMING</literal></term>
    <listitem>
     <para>
      Include actual startup time and time spent in each node in the output.
      The overhead of repeatedly reading the system clock can slow down the
      query significantly on some systems, so it may be useful to set this
      parameter to <literal>FALSE</literal> when only actual row counts, and
      not exact times, are needed.  Run time of the entire statement is
      always measured, even when node-level timing is turned off with this
      option.
      This parameter may only be used when <literal>ANALYZE</literal> is also
      enabled.  It defaults to <literal>TRUE</literal>.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>SUMMARY</literal></term>
    <listitem>
     <para>
      Include summary information (e.g., totaled timing information) after the
      query plan.  Summary information is included by default when
      <literal>ANALYZE</literal> is used but otherwise is not included by
      default, but can be enabled using this option.  Planning time in
      <command>EXPLAIN EXECUTE</command> includes the time required to fetch
      the plan from the cache and the time required for re-planning, if
      necessary.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>MEMORY</literal></term>
    <listitem>
     <para>
      Include information on memory consumption by the query planning phase.
      Specifically, include the precise amount of storage used by planner
      in-memory structures, as well as total memory considering allocation
      overhead.
      This parameter defaults to <literal>FALSE</literal>.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>FORMAT</literal></term>
    <listitem>
     <para>
      Specify the output format, which can be TEXT, XML, JSON, or YAML.
      Non-text output contains the same information as the text output
      format, but is easier for programs to parse.  This parameter defaults to
      <literal>TEXT</literal>.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><replaceable class="parameter">boolean</replaceable></term>
    <listitem>
     <para>
      Specifies whether the selected option should be turned on or off.
      You can write <literal>TRUE</literal>, <literal>ON</literal>, or
      <literal>1</literal> to enable the option, and <literal>FALSE</literal>,
      <literal>OFF</literal>, or <literal>0</literal> to disable it.  The
      <replaceable class="parameter">boolean</replaceable> value can also
      be omitted, in which case <literal>TRUE</literal> is

Title: EXPLAIN ANALYZE Parameters: WAL, Timing, Summary, Memory, and Format
Summary
This section outlines more EXPLAIN command parameters: WAL, for WAL record generation details (records, FPI, size, buffer fullness, requires ANALYZE); TIMING, to include startup and node times (can slow queries, requires ANALYZE); SUMMARY, to include summary info like total timings (included by default with ANALYZE); MEMORY, for memory consumption details during planning; and FORMAT, to specify the output format (TEXT, XML, JSON, YAML).