postgresql/src/backend
Tom Lane 2594cf0e8c Revise the API for GUC variable assign hooks.
The previous functions of assign hooks are now split between check hooks
and assign hooks, where the former can fail but the latter shouldn't.
Aside from being conceptually clearer, this approach exposes the
"canonicalized" form of the variable value to guc.c without having to do
an actual assignment.  And that lets us fix the problem recently noted by
Bernd Helmle that the auto-tune patch for wal_buffers resulted in bogus
log messages about "parameter "wal_buffers" cannot be changed without
restarting the server".  There may be some speed advantage too, because
this design lets hook functions avoid re-parsing variable values when
restoring a previous state after a rollback (they can store a pre-parsed
representation of the value instead).  This patch also resolves a
longstanding annoyance about custom error messages from variable assign
hooks: they should modify, not appear separately from, guc.c's own message
about "invalid parameter value".
2011-04-07 00:12:02 -04:00
..
access Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00
bootstrap More collations cleanup, from trawling for missed collation assignments. 2011-03-26 16:35:25 -04:00
catalog Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00
commands Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00
executor Fix check_exclusion_constraint() to insert correct collations in ScanKeys. 2011-03-27 13:29:52 -04:00
foreign Support comments on FOREIGN DATA WRAPPER and SERVER objects. 2011-04-01 11:28:28 -04:00
lib Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
libpq Attempt to unbreak windows builds broken by commit 754baa2. 2011-03-30 16:43:31 -04:00
main Use "backend process" rather than "backend server", where appropriate. 2011-03-12 09:38:56 -05:00
nodes More collations cleanup, from trawling for missed collation assignments. 2011-03-26 16:35:25 -04:00
optimizer More collations cleanup, from trawling for missed collation assignments. 2011-03-26 16:35:25 -04:00
parser Support comments on FOREIGN DATA WRAPPER and SERVER objects. 2011-04-01 11:28:28 -04:00
po Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
port Fix two missing spaces in error messages. 2011-04-01 14:42:38 +03:00
postmaster Avoid assuming there will be only 3 states for synchronous_commit. 2011-04-04 23:23:13 +01:00
regex Fix comparisons of pointers with zero to compare with NULL instead. 2010-10-29 15:51:52 -04:00
replication Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00
rewrite Pass collation to makeConst() instead of looking it up internally. 2011-03-25 20:10:42 -04:00
snowball Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
storage Repair some flakiness in CheckTargetForConflictsIn. 2011-04-05 15:17:25 -04:00
tcop Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00
tsearch Fix tsmatchsel() to account properly for null rows. 2011-02-17 19:00:49 -05:00
utils Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
Makefile replication/repl_gram.h needs to be cleaned too ... 2011-03-10 00:12:38 -05:00
common.mk Workaround for recursive make breakage 2011-01-13 09:32:06 +02:00
nls.mk Revise the API for GUC variable assign hooks. 2011-04-07 00:12:02 -04:00