On Fri, Jan 07, 2022 at 08:08:57PM +0900, Michael Paquier wrote: > On Fri, Jan 07, 2022 at 06:30:30PM +0900, Tatsuro Yamada wrote: > > We should prefix them with pg_catalog as well. > > Are you planning to make a patch? > > If not, I'll make a patch later since that's where \dX is. > > If any of you can make a patch, that would be great. Thanks!
I'd propose these.
>From d1e337daf81faa9a0a8c33a26091cbae396df7bb Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Thu, 6 Jan 2022 20:23:52 -0600 Subject: [PATCH 1/3] psql: qualify ::text with pg_catalog backpatch to v14 --- src/bin/psql/describe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c index 7cbf5f7b105..b3fbff1a0c3 100644 --- a/src/bin/psql/describe.c +++ b/src/bin/psql/describe.c @@ -4392,7 +4392,7 @@ listExtendedStats(const char *pattern) initPQExpBuffer(&buf); printfPQExpBuffer(&buf, "SELECT \n" - "es.stxnamespace::pg_catalog.regnamespace::text AS \"%s\", \n" + "es.stxnamespace::pg_catalog.regnamespace::pg_catalog.text AS \"%s\", \n" "es.stxname AS \"%s\", \n", gettext_noop("Schema"), gettext_noop("Name")); @@ -4439,7 +4439,7 @@ listExtendedStats(const char *pattern) processSQLNamePattern(pset.db, &buf, pattern, false, false, - "es.stxnamespace::pg_catalog.regnamespace::text", "es.stxname", + "es.stxnamespace::pg_catalog.regnamespace::pg_catalog.text", "es.stxname", NULL, "pg_catalog.pg_statistics_obj_is_visible(es.oid)"); appendPQExpBufferStr(&buf, "ORDER BY 1, 2;"); -- 2.17.1
>From 5033095abb3631bf01e4213752d5a4d3a24896fa Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Thu, 6 Jan 2022 20:25:07 -0600 Subject: [PATCH 2/3] psql: order a relation's extended statistics by name.. like \dX not by OID v15 only? --- src/bin/psql/describe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c index b3fbff1a0c3..daf06bbcc81 100644 --- a/src/bin/psql/describe.c +++ b/src/bin/psql/describe.c @@ -2608,7 +2608,7 @@ describeOneTableDetails(const char *schemaname, printfPQExpBuffer(&buf, "SELECT oid, " "stxrelid::pg_catalog.regclass, " - "stxnamespace::pg_catalog.regnamespace AS nsp, " + "stxnamespace::pg_catalog.regnamespace::pg_catalog.text AS nsp, " "stxname,\n" "pg_catalog.pg_get_statisticsobjdef_columns(oid) AS columns,\n" " 'd' = any(stxkind) AS ndist_enabled,\n" @@ -2617,7 +2617,7 @@ describeOneTableDetails(const char *schemaname, "stxstattarget\n" "FROM pg_catalog.pg_statistic_ext stat\n" "WHERE stxrelid = '%s'\n" - "ORDER BY 1;", + "ORDER BY nsp, stxname;", oid); result = PSQLexec(buf.data); -- 2.17.1
>From 020f425c7ed67183275d64f19c34f69d63b8ddc6 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Fri, 7 Jan 2022 15:48:46 -0600 Subject: [PATCH 3/3] Remove unused table alias --- src/bin/psql/describe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c index daf06bbcc81..c62d3bd4f8a 100644 --- a/src/bin/psql/describe.c +++ b/src/bin/psql/describe.c @@ -2615,7 +2615,7 @@ describeOneTableDetails(const char *schemaname, " 'f' = any(stxkind) AS deps_enabled,\n" " 'm' = any(stxkind) AS mcv_enabled,\n" "stxstattarget\n" - "FROM pg_catalog.pg_statistic_ext stat\n" + "FROM pg_catalog.pg_statistic_ext\n" "WHERE stxrelid = '%s'\n" "ORDER BY nsp, stxname;", oid); @@ -2719,7 +2719,7 @@ describeOneTableDetails(const char *schemaname, appendPQExpBufferStr(&buf, " stxstattarget\n"); else appendPQExpBufferStr(&buf, " -1 AS stxstattarget\n"); - appendPQExpBuffer(&buf, "FROM pg_catalog.pg_statistic_ext stat\n" + appendPQExpBuffer(&buf, "FROM pg_catalog.pg_statistic_ext\n" "WHERE stxrelid = '%s'\n" "ORDER BY 1;", oid); -- 2.17.1