Re: DOCS - "\d mytable" also shows any publications that publish mytable - Mailing list pgsql-hackers

From Peter Smith
Subject Re: DOCS - "\d mytable" also shows any publications that publish mytable
Date
Msg-id CAHut+PuSua2zaOrurG6hSExafnMnAeoMwtLPW1i=m8_msLCVkg@mail.gmail.com
Whole thread Raw
In response to Re: DOCS - "\d mytable" also shows any publications that publish mytable  (Chao Li <li.evan.chao@gmail.com>)
Responses Re: DOCS - "\d mytable" also shows any publications that publish mytable
List pgsql-hackers
On Tue, Dec 23, 2025 at 7:28 PM Chao Li <li.evan.chao@gmail.com> wrote:
>
>
>
> > On Dec 23, 2025, at 05:07, Peter Smith <smithpb2250@gmail.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

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Periodic authorization expiration checks using GoAway message
Next
From: Sami Imseih
Date:
Subject: pg_stat_statements: Fix nested tracking for implicitly closed cursors