DISCARD
DISCARD
DISCARD - discard session state
Synopsis
DISCARD { ALL | PLANS | SEQUENCES | TEMPORARY | TEMP }
Description
DISCARD
releases internal resources associated with a
database session. This command is useful for partially or fully
resetting the session's state. There are several subcommands to
release different types of resources; the
DISCARD ALL
variant subsumes all the others, and also resets additional state.
Parameters
-
PLANS
-
Releases all cached query plans, forcing re-planning to occur the next time the associated prepared statement is used.
-
SEQUENCES
-
Discards all cached sequence-related state, including
currval()
/lastval()
information and any preallocated sequence values that have not yet been returned bynextval()
. (See CREATE SEQUENCE for a description of preallocated sequence values.) -
TEMPORARY
orTEMP
-
Drops all temporary tables created in the current session.
-
ALL
-
Releases all temporary resources associated with the current session and resets the session to its initial state. Currently, this has the same effect as executing the following sequence of statements:
SET SESSION AUTHORIZATION DEFAULT; RESET ALL; DEALLOCATE ALL; CLOSE ALL; UNLISTEN *; SELECT pg_advisory_unlock_all(); DISCARD PLANS; DISCARD SEQUENCES; DISCARD TEMP;
Notes
DISCARD ALL
cannot be executed inside a transaction block.
Compatibility
DISCARD
is a
PostgreSQL
extension.