OSDN Git Service

RESET SESSION, plus related new DDL commands. Patch from Marko Kreen,
authorNeil Conway <neilc@samurai.com>
Thu, 12 Apr 2007 06:53:49 +0000 (06:53 +0000)
committerNeil Conway <neilc@samurai.com>
Thu, 12 Apr 2007 06:53:49 +0000 (06:53 +0000)
commitd13e903beaecd45a3721e4c2a7f9ff842ce94a79
tree3ded6910c6f451bb982fb5033735afd24927c5b6
parente6e47f278d2ab0fc744b56fed86cc34299079037
RESET SESSION, plus related new DDL commands. Patch from Marko Kreen,
reviewed by Neil Conway. This patch adds the following DDL command
variants: RESET SESSION, RESET TEMP, RESET PLANS, CLOSE ALL, and
DEALLOCATE ALL. RESET SESSION is intended for use by connection
pool software and the like, in order to reset a client session
to something close to its initial state.

Note that while most of these command variants can be executed
inside a transaction block (but are not transaction-aware!),
RESET SESSION cannot. While this is inconsistent, it is intended
to catch programmer mistakes: RESET SESSION in an open transaction
block is probably unintended.
25 files changed:
doc/src/sgml/ref/close.sgml
doc/src/sgml/ref/deallocate.sgml
doc/src/sgml/ref/reset.sgml
src/backend/catalog/namespace.c
src/backend/commands/async.c
src/backend/commands/portalcmds.c
src/backend/commands/prepare.c
src/backend/parser/gram.y
src/backend/tcop/utility.c
src/backend/utils/cache/plancache.c
src/backend/utils/misc/guc.c
src/backend/utils/mmgr/portalmem.c
src/include/catalog/namespace.h
src/include/commands/async.h
src/include/commands/prepare.h
src/include/nodes/parsenodes.h
src/include/utils/guc.h
src/include/utils/plancache.h
src/include/utils/portal.h
src/test/regress/expected/guc.out
src/test/regress/expected/portals.out
src/test/regress/expected/prepare.out
src/test/regress/sql/guc.sql
src/test/regress/sql/portals.sql
src/test/regress/sql/prepare.sql