postgresql/contrib/sepgsql
Tom Lane 88103567cb Disallow setting bogus GUCs within an extension's reserved namespace.
Commit 75d22069e tried to throw a warning for setting a custom GUC whose
prefix belongs to a previously-loaded extension, if there is no such GUC
defined by the extension.  But that caused unstable behavior with
parallel workers, because workers don't necessarily load extensions and
GUCs in the same order their leader did.  To make that work safely, we
have to completely disallow the case.  We now actually remove any such
GUCs at the time of initial extension load, and then throw an error not
just a warning if you try to add one later.  While this might create a
compatibility issue for a few people, the improvement in error-detection
capability seems worth it; it's hard to believe that there's any good
use-case for choosing such GUC names.

This also un-reverts 5609cc01c (Rename EmitWarningsOnPlaceholders() to
MarkGUCPrefixReserved()), since that function's old name is now even
more of a misnomer.

Florin Irion and Tom Lane

Discussion: https://postgr.es/m/1902182.1640711215@sss.pgh.pa.us
2022-02-21 14:10:43 -05:00
..
expected Include permissive/enforcing state in sepgsql log messages. 2022-01-12 14:23:13 -05:00
sql Remove gratuitous uses of deprecated SELECT INTO 2021-01-28 14:28:41 +01:00
.gitignore Minor sepgsql regression test fixes. 2011-02-02 23:46:51 -05:00
Makefile Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
database.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
dml.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
hooks.c Disallow setting bogus GUCs within an extension's reserved namespace. 2022-02-21 14:10:43 -05:00
label.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
launcher Update copyright for 2022 2022-01-07 19:04:57 -05:00
proc.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
relation.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
schema.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
selinux.c Include permissive/enforcing state in sepgsql log messages. 2022-01-12 14:23:13 -05:00
sepgsql-regtest.te Update sepgsql to add mandatory access control for TRUNCATE 2019-11-23 10:46:44 -05:00
sepgsql.h Include permissive/enforcing state in sepgsql log messages. 2022-01-12 14:23:13 -05:00
sepgsql.sql.in sepgsql_setcon(). 2012-03-15 16:08:40 -04:00
test_sepgsql Update sepgsql to add mandatory access control for TRUNCATE 2019-11-23 10:46:44 -05:00
uavc.c Include permissive/enforcing state in sepgsql log messages. 2022-01-12 14:23:13 -05:00