From 7aec59fe7fc8a28353514a05f40154aea8db39ec Mon Sep 17 00:00:00 2001 From: reshke Date: Thu, 25 Jun 2026 06:31:35 +0000 Subject: [PATCH v1] Schema-qualify psql internal query operators --- src/bin/psql/describe.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c index af3935b0078..9b00900b44b 100644 --- a/src/bin/psql/describe.c +++ b/src/bin/psql/describe.c @@ -3973,7 +3973,7 @@ describeRoles(const char *pattern, bool verbose, bool showSystem) appendPQExpBufferStr(&buf, "\nFROM pg_catalog.pg_roles r\n"); if (!showSystem && !pattern) - appendPQExpBufferStr(&buf, "WHERE r.rolname !~ '^pg_'\n"); + appendPQExpBufferStr(&buf, "WHERE r.rolname OPERATOR(pg_catalog.!~) '^pg_'\n"); if (!validateSQLNamePattern(&buf, pattern, false, false, NULL, "r.rolname", NULL, NULL, @@ -4191,7 +4191,7 @@ describeRoleGrants(const char *pattern, bool showSystem) " LEFT JOIN pg_catalog.pg_roles g ON (pam.grantor = g.oid)\n"); if (!showSystem && !pattern) - appendPQExpBufferStr(&buf, "WHERE m.rolname !~ '^pg_'\n"); + appendPQExpBufferStr(&buf, "WHERE m.rolname OPERATOR(pg_catalog.!~) '^pg_'\n"); if (!validateSQLNamePattern(&buf, pattern, false, false, NULL, "m.rolname", NULL, NULL, @@ -4384,7 +4384,7 @@ listTables(const char *tabtypes, const char *pattern, bool verbose, bool showSys if (!showSystem && !pattern) appendPQExpBufferStr(&buf, " AND n.nspname <> 'pg_catalog'\n" - " AND n.nspname !~ '^pg_toast'\n" + " AND n.nspname OPERATOR(pg_catalog.!~) '^pg_toast'\n" " AND n.nspname <> 'information_schema'\n"); if (!validateSQLNamePattern(&buf, pattern, true, false, @@ -4670,7 +4670,7 @@ listPartitionedTables(const char *reltypes, const char *pattern, bool verbose) if (!pattern) appendPQExpBufferStr(&buf, " AND n.nspname <> 'pg_catalog'\n" - " AND n.nspname !~ '^pg_toast'\n" + " AND n.nspname OPERATOR(pg_catalog.!~) '^pg_toast'\n" " AND n.nspname <> 'information_schema'\n"); if (!validateSQLNamePattern(&buf, pattern, true, false, @@ -5490,7 +5490,7 @@ listSchemas(const char *pattern, bool verbose, bool showSystem) if (!showSystem && !pattern) appendPQExpBufferStr(&buf, - "WHERE n.nspname !~ '^pg_' AND n.nspname <> 'information_schema'\n"); + "WHERE n.nspname OPERATOR(pg_catalog.!~) '^pg_' AND n.nspname <> 'information_schema'\n"); if (!validateSQLNamePattern(&buf, pattern, !showSystem && !pattern, false, -- 2.43.0