Skip to content

Commit d4ade0b

Browse files
vacuumdb: Schema-qualify operator in catalog query's WHERE clause.
Commit 1ab67c9, which modified this catalog query so that it doesn't return temporary relations, forgot to schema-qualify the operator. A comment earlier in the function implores us to fully qualify everything in the query: * Since we execute the constructed query with the default search_path * (which could be unsafe), everything in this query MUST be fully * qualified. This commit fixes that. While at it, add a newline for consistency with surrounding code. Reviewed-by: Noah Misch Discussion: https://postgr.es/m/ZwQJYcuPPUsF0reU%40nathan Backpatch-through: 12
1 parent b255493 commit d4ade0b

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/bin/scripts/vacuumdb.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -533,7 +533,8 @@ vacuum_one_database(const ConnParams *cparams,
533533
* Exclude temporary tables, beginning the WHERE clause.
534534
*/
535535
appendPQExpBufferStr(&catalog_query,
536-
" WHERE c.relpersistence != " CppAsString2(RELPERSISTENCE_TEMP));
536+
" WHERE c.relpersistence OPERATOR(pg_catalog.!=) "
537+
CppAsString2(RELPERSISTENCE_TEMP) "\n");
537538

538539

539540
/*

0 commit comments

Comments
 (0)