I noticed that for \dP+ since 1c5d9270e, regclass is written without
"pg_catalog." (Alvaro and I failed to notice it in 421a2c483, too).
+ if (showNested || pattern)
+ appendPQExpBuffer(&buf,
+ ",\n c3.oid::regclass as \"%s\"",
+ gettext_noop("Parent name"));
+
+ if (showIndexes)
+ appendPQExpBuffer(&buf,
+ ",\n c2.oid::regclass as \"%s\"",
+ gettext_noop("On table"));
\dX is new in v14, and introduced the same issue in ad600bba0 (and modifies it
but not fixed in a4d75c86).
I searched for issues like this, which finds all 4 errors with 1 false positive
in psql/describe.c
|time grep -wF "$(grep -oE 'pg_catalog\.[_[:alpha:]]+' src/bin/psql/describe.c |sed -r 's/^pg_catalog\.//;
/^(char|oid|text|trigger)$/d')" src/bin/psql/describe.c |grep -Ev 'pg_catalog\.|^ *[/ ]\*'
|#include "catalog/pg_am.h"
| ",\n inh.inhparent::regclass as \"%s\"",
| ",\n c2.oid::regclass as \"%s\"",
| " es.stxrelid::regclass) AS \"%s\"",
| "es.stxrelid::regclass) AS \"%s\"",
Tom informs me that this is not considered to be interesting as a security patch.
--
Justin