From eafe6a4ed821a3be92f04a3e523999c78c83b4b5 Mon Sep 17 00:00:00 2001 From: Vismay Tiwari 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)