Hi, On Sat, Oct 01, 2022 at 02:05:53PM +0200, Peter J. Holzer wrote: > On 2022-09-30 17:59:01 -0700, Bryn Llewellyn wrote: > > set rls.tenant_id=42; > > This works because there is a "." in the name. Without the "." > PostgreSQL complains: > > hjp=> set rls_tenant_id=42; > ERROR: unrecognized configuration parameter "rls_tenant_id" > > I think I sort of knew this but had forgotten about it, so checked the > manual for the exact rules. Unfortunately I couldn't find them (I > checked https://www.postgresql.org/docs/14/sql-set.html, > https://www.postgresql.org/docs/14/config-setting.html, > https://www.postgresql.org/docs/14/functions-admin.html#FUNCTIONS-ADMIN-SET, > and browser the table of content and the index). > > From the documentation I get the impression that you can only set > existing parameters, not your own. > > I therefore suggest adding something like this to the section > "configuration_parameter" in > https://www.postgresql.org/docs/14/sql-set.html: > > | In addition, any name including a single dot (".") can be set. This > | allows an application to define its own run-time parameters. Using the > | application name as a prefix reduces the probability of name conflicts > | with other applications or extensions. > > (This of course assumes that the behaviour is intentional and not a > bug.) This is intentional, and documented at https://www.postgresql.org/docs/14/runtime-config-custom.html.