pg.ddx.io pgsql-bugs@postgresql.org mailing list archivehelp / color / mirror / Atom feed
[PATCH v1] psql: schema-qualify catalog references in a tab-completion query 2+ messages / 2 participants [nested] [flat]
* [PATCH v1] psql: schema-qualify catalog references in a tab-completion query @ 2026-07-09 12:23 Vismay Tiwari <vismay.t@gmail.com> 2026-07-19 14:58 ` Re: [PATCH v1] psql: schema-qualify catalog references in a tab-completion query Paul Kim <mok03127@gmail.com> 0 siblings, 1 reply; 2+ messages in thread From: Vismay Tiwari @ 2026-07-09 12:23 UTC (permalink / raw) To: pgsql-bugs@lists.postgresql.org The tab-completion query behind Query_for_list_of_database_vars referenced pg_db_role_setting and pg_database without schema qualification. A table of the same name earlier in the user's search_path therefore shadows the catalog and feeds arbitrary values into the completion suggestions for "ALTER DATABASE ... RESET". Qualify both with pg_catalog, matching the qualification already applied to unnest()/split_part() in this same query and to the catalogs in the analogous subscription-variable completion query. Reported-by: Zhou Digoal Bug: #19523 Discussion: https://postgr.es/m/19523-424457118202f570@postgresql.org --- Resending in-thread: my earlier copy of this patch reached the list without an In-Reply-To header, so it landed unthreaded rather than under the report. Same patch, no changes. src/bin/psql/tab-complete.in.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index 49ea584..6a88470 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -1040,8 +1040,8 @@ static const SchemaQuery Query_for_trigger_of_table = { #define Query_for_list_of_database_vars \ "SELECT conf FROM ("\ " SELECT setdatabase, pg_catalog.split_part(pg_catalog.unnest(setconfig),'=',1) conf"\ -" FROM pg_db_role_setting "\ -" ) s, pg_database d "\ +" FROM pg_catalog.pg_db_role_setting "\ +" ) s, pg_catalog.pg_database d "\ " WHERE s.setdatabase = d.oid "\ " AND conf LIKE '%s'"\ " AND d.datname LIKE '%s'" -- 2.50.1 (Apple Git-155) ^ permalink raw reply [nested|flat] 2+ messages in thread
* Re: [PATCH v1] psql: schema-qualify catalog references in a tab-completion query 2026-07-09 12:23 [PATCH v1] psql: schema-qualify catalog references in a tab-completion query Vismay Tiwari <vismay.t@gmail.com> @ 2026-07-19 14:58 ` Paul Kim <mok03127@gmail.com> 0 siblings, 0 replies; 2+ messages in thread From: Paul Kim @ 2026-07-19 14:58 UTC (permalink / raw) To: pgsql-bugs@lists.postgresql.org; +Cc: vismay.t@gmail.com Hi Vismay, cfbot didn't pick up this entry (CF #7027) because the v1 patch was posted inline rather than as an attachment. I'm re-sending your v1 verbatim as a .patch attachment so the CI can build it; authorship is unchanged (the attached patch keeps your From:). It still applies cleanly to current master. Regards, Paul Attachments: [text/x-patch] v1-0001-psql-schema-qualify-catalog-references-in-a-tab-c.patch (1.5K, ../../178447313788.14559.321633735335861831@mail.gmail.com/2-v1-0001-psql-schema-qualify-catalog-references-in-a-tab-c.patch) download | inline diff: From eafe6a4ed821a3be92f04a3e523999c78c83b4b5 Mon Sep 17 00:00:00 2001 From: Vismay Tiwari <vismay.t@gmail.com> Date: Thu, 9 Jul 2026 12:23:07 +0530 Subject: [PATCH v1] psql: schema-qualify catalog references in a tab-completion query The tab-completion query behind Query_for_list_of_database_vars referenced pg_db_role_setting and pg_database without schema qualification. A table of the same name earlier in the user's search_path therefore shadows the catalog and feeds arbitrary values into the completion suggestions for "ALTER DATABASE ... RESET". Qualify both with pg_catalog, matching the qualification already applied to unnest()/split_part() in this same query and to the catalogs in the analogous subscription-variable completion query. --- src/bin/psql/tab-complete.in.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index 1cacc8c3ea2..90c6f1293b1 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -1040,8 +1040,8 @@ static const SchemaQuery Query_for_trigger_of_table = { #define Query_for_list_of_database_vars \ "SELECT conf FROM ("\ " SELECT setdatabase, pg_catalog.split_part(pg_catalog.unnest(setconfig),'=',1) conf"\ -" FROM pg_db_role_setting "\ -" ) s, pg_database d "\ +" FROM pg_catalog.pg_db_role_setting "\ +" ) s, pg_catalog.pg_database d "\ " WHERE s.setdatabase = d.oid "\ " AND conf LIKE '%s'"\ " AND d.datname LIKE '%s'" -- 2.50.1 (Apple Git-155) ^ permalink raw reply [nested|flat] 2+ messages in thread
end of thread, other threads:[~2026-07-19 14:58 UTC | newest] Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2026-07-09 12:23 [PATCH v1] psql: schema-qualify catalog references in a tab-completion query Vismay Tiwari <vismay.t@gmail.com> 2026-07-19 14:58 ` Paul Kim <mok03127@gmail.com>
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