1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-14 08:21:07 +03:00

Rename the newly-added commands for discarding session state.

RESET SESSION, RESET PLANS, and RESET TEMP are now DISCARD ALL,
DISCARD PLANS, and DISCARD TEMP, respectively. This is to avoid
confusion with the pre-existing RESET variants: the DISCARD
commands are not actually similar to RESET. Patch from Marko
Kreen, with some minor editorialization.
This commit is contained in:
Neil Conway
2007-04-26 16:13:15 +00:00
parent 5ea27a4b28
commit 16efdb5ec7
19 changed files with 345 additions and 133 deletions

View File

@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/allfiles.sgml,v 1.69 2007/01/23 05:07:16 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/allfiles.sgml,v 1.70 2007/04/26 16:13:08 neilc Exp $
PostgreSQL documentation
Complete list of usable sgml source files in this directory.
-->
@ -61,6 +61,7 @@ Complete list of usable sgml source files in this directory.
<!entity deallocate system "deallocate.sgml">
<!entity declare system "declare.sgml">
<!entity delete system "delete.sgml">
<!entity discard system "discard.sgml">
<!entity dropAggregate system "drop_aggregate.sgml">
<!entity dropCast system "drop_cast.sgml">
<!entity dropConversion system "drop_conversion.sgml">

View File

@ -0,0 +1,107 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/discard.sgml,v 1.1 2007/04/26 16:13:09 neilc Exp $
PostgreSQL documentation
-->
<refentry id="SQL-DISCARD">
<refmeta>
<refentrytitle id="SQL-DISCARD-TITLE">DISCARD</refentrytitle>
<refmiscinfo>SQL - Language Statements</refmiscinfo>
</refmeta>
<refnamediv>
<refname>DISCARD</refname>
<refpurpose>Discard internal server state</refpurpose>
</refnamediv>
<indexterm zone="sql-discard">
<primary>DISCARD</primary>
</indexterm>
<refsynopsisdiv>
<synopsis>
DISCARD { ALL | PLANS | TEMPORARY | TEMP }
</synopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>
<command>DISCARD</> releases internal resources associated with a
database session. These resources are normally released at the end
of the session.
</para>
<para>
<command>DISCARD TEMP</> drops all temporary tables created in the
current session. <command>DISCARD PLANS</> releases all internally
cached query plans. <command>DISCARD ALL</> resets a session to
its original state, discarding temporary resources and resetting
session-local configuration changes.
</para>
</refsect1>
<refsect1>
<title>Parameters</title>
<variablelist>
<varlistentry>
<term><literal>TEMPORARY</literal> or <literal>TEMP</literal></term>
<listitem>
<para>
Drops all temporary tables created in the current session.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>PLANS</literal></term>
<listitem>
<para>
Releases all cached query plans.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ALL</literal></term>
<listitem>
<para>
Releases all temporary resources associated with the current
session and resets the session to its initial state. This has
the same effect as executing the following sequence of
statements:
<programlisting>
SET SESSION AUTHORIZATION DEFAULT;
RESET ALL;
DEALLOCATE ALL;
CLOSE ALL;
UNLISTEN *;
DISCARD PLANS;
DISCARD TEMP;
</programlisting>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Notes</title>
<para>
<command>DISCARD ALL</> cannot be executed inside a transaction block.
</para>
</refsect1>
<refsect1>
<title>Compatibility</title>
<para>
<command>DISCARD</command> is a <productname>PostgreSQL</productname> extension.
</para>
</refsect1>
</refentry>

View File

@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/reset.sgml,v 1.34 2007/04/12 22:34:45 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/reset.sgml,v 1.35 2007/04/26 16:13:09 neilc Exp $
PostgreSQL documentation
-->
@ -22,7 +22,6 @@ PostgreSQL documentation
<synopsis>
RESET <replaceable class="PARAMETER">configuration_parameter</replaceable>
RESET ALL
RESET { PLANS | SESSION | TEMP | TEMPORARY }
</synopsis>
</refsynopsisdiv>
@ -53,15 +52,6 @@ SET <replaceable class="parameter">configuration_parameter</replaceable> TO DEFA
See the <command>SET</> reference page for details on the
transaction behavior of <command>RESET</>.
</para>
<para>
<command>RESET</> can also be used to release internal resources
that are usually released at the end of session. <command>RESET
TEMP</> drops all temporary tables created in the current session.
<command>RESET PLANS</> releases all internally cached plans.
<command>RESET SESSION</> releases all externally visible temporary
resources associated with the current session.
</para>
</refsect1>
<refsect1>
@ -86,56 +76,9 @@ SET <replaceable class="parameter">configuration_parameter</replaceable> TO DEFA
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>TEMP, TEMPORARY</literal></term>
<listitem>
<para>
Drops all temporary tables created in the current session.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>PLANS</literal></term>
<listitem>
<para>
Releases all cached query plans.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>SESSION</literal></term>
<listitem>
<para>
Releases all temporary resources associated with the current
session. This has the same effect as executing the following
command sequence:
<programlisting>
SET SESSION AUTHORIZATION DEFAULT;
RESET ALL;
DEALLOCATE ALL;
CLOSE ALL;
UNLISTEN *;
RESET PLANS;
RESET TEMP;
</programlisting>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Notes</title>
<para>
<command>RESET SESSION</> cannot be executed inside a transaction block.
</para>
</refsect1>
<refsect1>
<title>Examples</title>