pg.ddx.io pgsql-committers@postgresql.org mailing list archivehelp / color / mirror / Atom feed
pgsql: Allow resetting unknown custom GUCs with reserved prefixes. 5+ messages / 1 participants [nested] [flat]
* pgsql: Allow resetting unknown custom GUCs with reserved prefixes. @ 2025-08-01 21:55 Nathan Bossart <nathan@postgresql.org> 0 siblings, 0 replies; 5+ messages in thread From: Nathan Bossart @ 2025-08-01 21:55 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Allow resetting unknown custom GUCs with reserved prefixes. Currently, ALTER DATABASE/ROLE/SYSTEM RESET [ALL] with an unknown custom GUC with a prefix reserved by MarkGUCPrefixReserved() errors (unless a superuser runs a RESET ALL variant). This is problematic for cases such as an extension library upgrade that removes a GUC. To fix, simply make sure the relevant code paths explicitly allow it. Note that we require superuser or privileges on the parameter to reset it. This is perhaps a bit more restrictive than is necessary, but it's not clear whether further relaxing the requirements is safe. Oversight in commit 88103567cb. The ALTER SYSTEM fix is dependent on commit 2d870b4aef, which first appeared in v17. Unfortunately, back-patching that commit would introduce ABI breakage, and while that breakage seems unlikely to bother anyone, it doesn't seem worth the risk. Hence, the ALTER SYSTEM part of this commit is omitted on v15 and v16. Reported-by: Mert Alev <mert@futo.org> Reviewed-by: Laurenz Albe <laurenz.albe@cybertec.at> Discussion: https://postgr.es/m/18964-ba09dea8c98fccd6%40postgresql.org Backpatch-through: 15 Branch ------ REL_15_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/f79ca73d75cb551f46b37b14407ae42a50b6d38c Modified Files -------------- contrib/auto_explain/Makefile | 2 ++ contrib/auto_explain/expected/alter_reset.out | 17 +++++++++++++++++ contrib/auto_explain/sql/alter_reset.sql | 20 ++++++++++++++++++++ src/backend/utils/misc/guc.c | 14 ++++++++++---- 4 files changed, 49 insertions(+), 4 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Allow resetting unknown custom GUCs with reserved prefixes. @ 2025-08-01 21:55 Nathan Bossart <nathan@postgresql.org> 0 siblings, 0 replies; 5+ messages in thread From: Nathan Bossart @ 2025-08-01 21:55 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Allow resetting unknown custom GUCs with reserved prefixes. Currently, ALTER DATABASE/ROLE/SYSTEM RESET [ALL] with an unknown custom GUC with a prefix reserved by MarkGUCPrefixReserved() errors (unless a superuser runs a RESET ALL variant). This is problematic for cases such as an extension library upgrade that removes a GUC. To fix, simply make sure the relevant code paths explicitly allow it. Note that we require superuser or privileges on the parameter to reset it. This is perhaps a bit more restrictive than is necessary, but it's not clear whether further relaxing the requirements is safe. Oversight in commit 88103567cb. The ALTER SYSTEM fix is dependent on commit 2d870b4aef, which first appeared in v17. Unfortunately, back-patching that commit would introduce ABI breakage, and while that breakage seems unlikely to bother anyone, it doesn't seem worth the risk. Hence, the ALTER SYSTEM part of this commit is omitted on v15 and v16. Reported-by: Mert Alev <mert@futo.org> Reviewed-by: Laurenz Albe <laurenz.albe@cybertec.at> Discussion: https://postgr.es/m/18964-ba09dea8c98fccd6%40postgresql.org Backpatch-through: 15 Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/9eb6068fb64c36889102a09c030d1d9f4d832821 Modified Files -------------- contrib/auto_explain/Makefile | 2 ++ contrib/auto_explain/expected/alter_reset.out | 19 +++++++++++++++++++ contrib/auto_explain/meson.build | 5 +++++ contrib/auto_explain/sql/alter_reset.sql | 22 ++++++++++++++++++++++ src/backend/utils/misc/guc.c | 21 ++++++++++++++++----- 5 files changed, 64 insertions(+), 5 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Allow resetting unknown custom GUCs with reserved prefixes. @ 2025-08-01 21:55 Nathan Bossart <nathan@postgresql.org> 0 siblings, 0 replies; 5+ messages in thread From: Nathan Bossart @ 2025-08-01 21:55 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Allow resetting unknown custom GUCs with reserved prefixes. Currently, ALTER DATABASE/ROLE/SYSTEM RESET [ALL] with an unknown custom GUC with a prefix reserved by MarkGUCPrefixReserved() errors (unless a superuser runs a RESET ALL variant). This is problematic for cases such as an extension library upgrade that removes a GUC. To fix, simply make sure the relevant code paths explicitly allow it. Note that we require superuser or privileges on the parameter to reset it. This is perhaps a bit more restrictive than is necessary, but it's not clear whether further relaxing the requirements is safe. Oversight in commit 88103567cb. The ALTER SYSTEM fix is dependent on commit 2d870b4aef, which first appeared in v17. Unfortunately, back-patching that commit would introduce ABI breakage, and while that breakage seems unlikely to bother anyone, it doesn't seem worth the risk. Hence, the ALTER SYSTEM part of this commit is omitted on v15 and v16. Reported-by: Mert Alev <mert@futo.org> Reviewed-by: Laurenz Albe <laurenz.albe@cybertec.at> Discussion: https://postgr.es/m/18964-ba09dea8c98fccd6%40postgresql.org Backpatch-through: 15 Branch ------ REL_16_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/b998ce3272ab45877f760ff558906a967b6a7da6 Modified Files -------------- contrib/auto_explain/Makefile | 2 ++ contrib/auto_explain/expected/alter_reset.out | 17 +++++++++++++++++ contrib/auto_explain/meson.build | 5 +++++ contrib/auto_explain/sql/alter_reset.sql | 20 ++++++++++++++++++++ src/backend/utils/misc/guc.c | 14 ++++++++++---- 5 files changed, 54 insertions(+), 4 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Allow resetting unknown custom GUCs with reserved prefixes. @ 2025-08-01 21:55 Nathan Bossart <nathan@postgresql.org> 0 siblings, 0 replies; 5+ messages in thread From: Nathan Bossart @ 2025-08-01 21:55 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Allow resetting unknown custom GUCs with reserved prefixes. Currently, ALTER DATABASE/ROLE/SYSTEM RESET [ALL] with an unknown custom GUC with a prefix reserved by MarkGUCPrefixReserved() errors (unless a superuser runs a RESET ALL variant). This is problematic for cases such as an extension library upgrade that removes a GUC. To fix, simply make sure the relevant code paths explicitly allow it. Note that we require superuser or privileges on the parameter to reset it. This is perhaps a bit more restrictive than is necessary, but it's not clear whether further relaxing the requirements is safe. Oversight in commit 88103567cb. The ALTER SYSTEM fix is dependent on commit 2d870b4aef, which first appeared in v17. Unfortunately, back-patching that commit would introduce ABI breakage, and while that breakage seems unlikely to bother anyone, it doesn't seem worth the risk. Hence, the ALTER SYSTEM part of this commit is omitted on v15 and v16. Reported-by: Mert Alev <mert@futo.org> Reviewed-by: Laurenz Albe <laurenz.albe@cybertec.at> Discussion: https://postgr.es/m/18964-ba09dea8c98fccd6%40postgresql.org Backpatch-through: 15 Branch ------ REL_17_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/39ff056365e438b530498def7ef18d588129e8e0 Modified Files -------------- contrib/auto_explain/Makefile | 2 ++ contrib/auto_explain/expected/alter_reset.out | 19 +++++++++++++++++++ contrib/auto_explain/meson.build | 5 +++++ contrib/auto_explain/sql/alter_reset.sql | 22 ++++++++++++++++++++++ src/backend/utils/misc/guc.c | 21 ++++++++++++++++----- 5 files changed, 64 insertions(+), 5 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Allow resetting unknown custom GUCs with reserved prefixes. @ 2025-08-01 21:55 Nathan Bossart <nathan@postgresql.org> 0 siblings, 0 replies; 5+ messages in thread From: Nathan Bossart @ 2025-08-01 21:55 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Allow resetting unknown custom GUCs with reserved prefixes. Currently, ALTER DATABASE/ROLE/SYSTEM RESET [ALL] with an unknown custom GUC with a prefix reserved by MarkGUCPrefixReserved() errors (unless a superuser runs a RESET ALL variant). This is problematic for cases such as an extension library upgrade that removes a GUC. To fix, simply make sure the relevant code paths explicitly allow it. Note that we require superuser or privileges on the parameter to reset it. This is perhaps a bit more restrictive than is necessary, but it's not clear whether further relaxing the requirements is safe. Oversight in commit 88103567cb. The ALTER SYSTEM fix is dependent on commit 2d870b4aef, which first appeared in v17. Unfortunately, back-patching that commit would introduce ABI breakage, and while that breakage seems unlikely to bother anyone, it doesn't seem worth the risk. Hence, the ALTER SYSTEM part of this commit is omitted on v15 and v16. Reported-by: Mert Alev <mert@futo.org> Reviewed-by: Laurenz Albe <laurenz.albe@cybertec.at> Discussion: https://postgr.es/m/18964-ba09dea8c98fccd6%40postgresql.org Backpatch-through: 15 Branch ------ REL_18_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/7b9674a8b180db040906912a1e63ab831ad70ce8 Modified Files -------------- contrib/auto_explain/Makefile | 2 ++ contrib/auto_explain/expected/alter_reset.out | 19 +++++++++++++++++++ contrib/auto_explain/meson.build | 5 +++++ contrib/auto_explain/sql/alter_reset.sql | 22 ++++++++++++++++++++++ src/backend/utils/misc/guc.c | 21 ++++++++++++++++----- 5 files changed, 64 insertions(+), 5 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
end of thread, other threads:[~2025-08-01 21:55 UTC | newest] Thread overview: 5+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2025-08-01 21:55 pgsql: Allow resetting unknown custom GUCs with reserved prefixes. Nathan Bossart <nathan@postgresql.org> 2025-08-01 21:55 pgsql: Allow resetting unknown custom GUCs with reserved prefixes. Nathan Bossart <nathan@postgresql.org> 2025-08-01 21:55 pgsql: Allow resetting unknown custom GUCs with reserved prefixes. Nathan Bossart <nathan@postgresql.org> 2025-08-01 21:55 pgsql: Allow resetting unknown custom GUCs with reserved prefixes. Nathan Bossart <nathan@postgresql.org> 2025-08-01 21:55 pgsql: Allow resetting unknown custom GUCs with reserved prefixes. Nathan Bossart <nathan@postgresql.org>
This inbox is served by DDX for PostgreSQL; see mirroring instructions for how to clone and mirror all data and code used for this inbox