-
- Downloads
Arrange for SET LOCAL's effects to persist until the end of the current top
transaction, unless rolled back or overridden by a SET clause for the same variable attached to a surrounding function call. Per discussion, these seem the best semantics. Note that this is an INCOMPATIBLE CHANGE: in 8.0 through 8.2, SET LOCAL's effects disappeared at subtransaction commit (leading to behavior that made little sense at the SQL level). I took advantage of the opportunity to rewrite and simplify the GUC variable save/restore logic a little bit. The old idea of a "tentative" value is gone; it was a hangover from before we had a stack. Also, we no longer need a stack entry for every nesting level, but only for those in which a variable's value actually changed.
Showing
- doc/src/sgml/ref/create_function.sgml 5 additions, 5 deletionsdoc/src/sgml/ref/create_function.sgml
- doc/src/sgml/ref/prepare_transaction.sgml 3 additions, 2 deletionsdoc/src/sgml/ref/prepare_transaction.sgml
- doc/src/sgml/ref/reset.sgml 22 additions, 9 deletionsdoc/src/sgml/ref/reset.sgml
- doc/src/sgml/ref/set.sgml 46 additions, 11 deletionsdoc/src/sgml/ref/set.sgml
- doc/src/sgml/ref/show.sgml 7 additions, 3 deletionsdoc/src/sgml/ref/show.sgml
- src/backend/utils/adt/ri_triggers.c 4 additions, 5 deletionssrc/backend/utils/adt/ri_triggers.c
- src/backend/utils/fmgr/fmgr.c 3 additions, 5 deletionssrc/backend/utils/fmgr/fmgr.c
- src/backend/utils/init/miscinit.c 2 additions, 2 deletionssrc/backend/utils/init/miscinit.c
- src/backend/utils/init/postinit.c 2 additions, 2 deletionssrc/backend/utils/init/postinit.c
- src/backend/utils/misc/README 109 additions, 50 deletionssrc/backend/utils/misc/README
- src/backend/utils/misc/guc-file.l 10 additions, 11 deletionssrc/backend/utils/misc/guc-file.l
- src/backend/utils/misc/guc.c 349 additions, 367 deletionssrc/backend/utils/misc/guc.c
- src/include/utils/guc.h 11 additions, 3 deletionssrc/include/utils/guc.h
- src/include/utils/guc_tables.h 20 additions, 19 deletionssrc/include/utils/guc_tables.h
- src/test/regress/expected/guc.out 141 additions, 0 deletionssrc/test/regress/expected/guc.out
- src/test/regress/sql/guc.sql 64 additions, 0 deletionssrc/test/regress/sql/guc.sql
Loading
Please register or sign in to comment