Thread: Add prefix pg_catalog to pg_get_statisticsobjdef_columns() in describe.c (\dX)

Add prefix pg_catalog to pg_get_statisticsobjdef_columns() in describe.c (\dX)

From
Tatsuro Yamada
Date:
Hi,

I found other functions that we should add "pg_catalog" prefix in
describe.c. This fix is similar to the following commit.

=====
commit 359bcf775550aa577c86ea30a6d071487fcca1ed
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date:   Sat Aug 28 12:04:15 2021 -0400

     psql \dX: reference regclass with "pg_catalog." prefix
=====

Please find attached the patch.

Regards,
Tatsuro Yamada

Attachment

Re: Add prefix pg_catalog to pg_get_statisticsobjdef_columns() in describe.c (\dX)

From
Magnus Hagander
Date:


On Mon, Sep 27, 2021 at 2:14 AM Tatsuro Yamada <tatsuro.yamada.tf@nttcom.co.jp> wrote:
Hi,

I found other functions that we should add "pg_catalog" prefix in
describe.c. This fix is similar to the following commit.

Hi!

Yup, that's correct. Applied and backpatched to 14 (but it won't be in the 14.0 release).
 
--

Re: Add prefix pg_catalog to pg_get_statisticsobjdef_columns() in describe.c (\dX)

From
Tatsuro Yamada
Date:
Hi Magnus!


>     I found other functions that we should add "pg_catalog" prefix in
>     describe.c. This fix is similar to the following commit.
> 
> Yup, that's correct. Applied and backpatched to 14 (but it won't be in the 14.0 release).


Thank you!


Regards,
Tatsuro Yamada





Re: \dP and \dX use ::regclass without "pg_catalog."

From
Justin Pryzby
Date:
https://www.postgresql.org/message-id/flat/7ad8cd13-db5b-5cf6-8561-dccad1a934cb%40nttcom.co.jp
https://www.postgresql.org/message-id/flat/20210827193151.GN26465%40telsasoft.com

On Sat, Aug 28, 2021 at 08:57:32AM -0400, Álvaro Herrera wrote:
> On 2021-Aug-27, Justin Pryzby wrote:
> > I noticed that for \dP+ since 1c5d9270e, regclass is written without
> > "pg_catalog." (Alvaro and I failed to notice it in 421a2c483, too).
> 
> Oops, will fix shortly.

On Tue, Sep 28, 2021 at 04:25:11PM +0200, Magnus Hagander wrote:
> On Mon, Sep 27, 2021 at 2:14 AM Tatsuro Yamada <tatsuro.yamada.tf@nttcom.co.jp> wrote:
> > I found other functions that we should add "pg_catalog" prefix in
> > describe.c. This fix is similar to the following commit.
> 
> Yup, that's correct. Applied and backpatched to 14 (but it won't be in the
> 14.0 release).

Those two issues were fixed in 1f092a309 and 07f8a9e784.
But, we missed two casts to ::text which don't use pg_catalog.
Evidently the cast is to allow stable sorting.

I improved on my previous hueristic to look for these ; this finds the two
missing schema qualifiers:

> time grep "$(sed -r "/.*pg_catalog\\.([_[:alpha:]]+).*/! d; s//\\1/; /^(char|oid)$/d; s/.*/[^. ']\\\\<&\\\\>/"
src/bin/psql/describe.c|sort -u)" src/bin/psql/describe.c
 

While looking at that, I wondered why describeOneTableDetails lists stats
objects in order of OID ?  Dating back to 7b504eb28, and, before that,
554A73A6.2060603@2ndquadrant.com.  It should probably order by nsp, stxname.



Re: \dP and \dX use ::regclass without "pg_catalog."

From
Tatsuro Yamada
Date:
Hi Justin,

On 2022/01/07 11:22, Justin Pryzby wrote:
> But, we missed two casts to ::text which don't use pg_catalog.
> Evidently the cast is to allow stable sorting.

Ah, you are right.

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.

Regards,
Tatsuro Yamada





Re: \dP and \dX use ::regclass without "pg_catalog."

From
Michael Paquier
Date:
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!
--
Michael

Attachment

Re: \dP and \dX use ::regclass without "pg_catalog."

From
Tatsuro Yamada
Date:
Hi justin,

On 2022/01/08 6:56, Justin Pryzby wrote:
> 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.


Thanks!

Regards,
Tatsuro Yamada