Update documentation for SET to include SCHEMA / NAMES syntax
Hackorum builds and tests every patch posted to the lists, not only commitfest submissions. This is Hackorum's own CI rather than the PostgreSQL project's, and it is still under testing - please report anything that looks wrong.
You can run a PostgreSQL built from this patch straight from Docker, with no checkout and no build:
docker run --rm -p 5432:5432 ghcr.io/hackorum-dev/postgres-patch:t139152psql -h localhost -U postgresBuilt from patchset v1 (message #1), September 19, 2026 at 01:57 PM.
Every patchset is also pushed to a branch of our PostgreSQL fork, so you can check out the same tree CI built. Without a PostgreSQL checkout:
git clone --branch t139152_1 https://github.com/hackorum-dev/postgres.gitIn a checkout you already have, add the fork once:
git remote add hackorum https://github.com/hackorum-dev/postgres.gitthen, for this patchset and every later one:
git fetch hackorum t139152_1 && git checkout t139152_1Patchset v1 (message #1) is on t139152_1
Hi,
The attached patch updates the documentation for the SET statement to
include the special syntax for SCHEMA / NAMES in the synopsis. The
current documentation only mentions this special syntax under the
parameters, which is confusing and different from the usual practice.
We could consider also moving the description on the special syntax up
to the description instead of keeping it under parameters, but the
TIME ZONE variant is already explained under the parameters too so I
thought better to keep the current structure.
Thanks,
Álvaro Rodríguez
=?UTF-8?B?w4FsdmFybyBSb2Ryw61ndWV6?= <alvarorodriguez.garcia@datadoghq.com> writes:
The attached patch updates the documentation for the SET statement to
include the special syntax for SCHEMA / NAMES in the synopsis. The
current documentation only mentions this special syntax under the
parameters, which is confusing and different from the usual practice.
Hmm. It's true that SET SCHEMA / SET NAMES are in the SQL standard,
but I think they are semi-deprecated for Postgres despite that.
They are confusing because they are aliases for GUC parameters that
are named significantly differently from the standard's syntax,
so I doubt we want to encourage their use. That being the case,
I'm content to leave them buried in the Parameters section.
SET TIME ZONE is also a SQL-standard thing, but it's more acceptable
because the syntax is sufficiently closely related to the GUC's name.
regards, tom lane