Re: DOCS - "\d mytable" also shows any publications that publish mytable

From: Peter Smith <smithpb2250(at)gmail(dot)com>
To: Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: DOCS - "\d mytable" also shows any publications that publish mytable
Date: 2025-12-23 22:20:28
Message-ID: CAHut+PuSua2zaOrurG6hSExafnMnAeoMwtLPW1i=m8_msLCVkg@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Dec 23, 2025 at 7:28 PM Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com> wrote:
>
>
>
> > On Dec 23, 2025, at 05:07, Peter Smith <smithpb2250(at)gmail(dot)com> wrote:
> >
> > I was looking at "\d" documentation yesterday.
> >
> > The psql table describe (e.g. "\d mytable") will display a list of any
> > "Publications:" that are publishing the specified table. Somehow, this
> > ability had escaped being mentioned in the psql reference
> > documentation.
> >
> > Here is a trivial patch to fix that omission.
> >
> > ======
> > Kind Regards,
> > Peter Smith.
> > Fujitsu Australia
> > <v1-0001-DOCS-psql-describe-table-can-list-publications.patch>
>
> Not only publication, “\d table_name” also shows partition information:
>
> ```
> evantest=# \d t_part;
> Partitioned table "public.t_part"
> Column | Type | Collation | Nullable | Default
> --------+---------+-----------+----------+---------
> id | integer | | |
> val | integer | | |
> Partition key: RANGE (id)
> Publications:
> "mypub"
> Number of partitions: 3 (Use \d+ to list them.)
>
> evantest=# \d t_part_p1;
> Table "public.t_part_p1"
> Column | Type | Collation | Nullable | Default
> --------+---------+-----------+----------+---------
> id | integer | | |
> val | integer | | |
> Partition of: t_part FOR VALUES FROM (0) TO (100)
> ```
>
> As you updating this section, you may add “partition info” as well.
>

OK, I've added some text about partitions. See patch v2.

~~~

TBH, the \d and \d+ partition output looked strange to me.

test_pub=# \d+ tp
Partitioned table "public.tp"
Column | Type | Collation | Nullable | Default | Storage |
Compression | Stats target | Description
--------+---------+-----------+----------+---------+---------+-------------+--------------+-------------
a | integer | | | | plain |
| |
Partition key: RANGE (a)
Publications:
"pub1"
"pub3"
Partitions: tp1 FOR VALUES FROM (1) TO (10),
tp2 FOR VALUES FROM (10) TO (20)

For example:
a) Why isn't the "Partition key:" and "Partitions:" info kept together?
b) Why does the "Partitions:" list indentation look different?

Anyway, those are questions for another thread and another year.

======
Kind Regards,
Peter Smith.
Fujitsu Australia

Attachment Content-Type Size
v2-0001-DOCS-psql-describe-table-can-list-publications-an.patch application/octet-stream 2.1 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Sami Imseih 2025-12-23 23:07:29 pg_stat_statements: Fix nested tracking for implicitly closed cursors
Previous Message Bruce Momjian 2025-12-23 21:59:21 Re: Periodic authorization expiration checks using GoAway message