Re: Add pg_get_publication_ddl function

From: Cary Huang <cary(dot)huang(at)highgo(dot)ca>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Cc: "Jonathan Gonzalez V(dot)" <jonathan(dot)abdiel(at)gmail(dot)com>
Subject: Re: Add pg_get_publication_ddl function
Date: 2026-02-14 00:21:12
Message-ID: 177102847223.282294.4921424163640367593.pgcf@coridan.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

The following review has been posted through the commitfest application:
make installcheck-world: not tested
Implements feature: not tested
Spec compliant: not tested
Documentation: not tested

Hello

> +# run the retail DDL tests at the end make sense to not interrupt with other
> +# tests in case the object names are the same to other objects previously used.
> +test: publication_ddl

retail DDL tests is unclear to me. Might as well remove the comment.

>+ if (pub->alltables || pub->allsequences)
>+ {
>+ appendStringInfo(buf, " FOR ");
>+
>+ if (pub->alltables)
>+ appendStringInfo(buf, "ALL TABLES");
>+
>+ /* The sequence are published only on versions 19+ */
>+ if (pub->allsequences)
>+ appendStringInfo(buf,
>+ "%sALL SEQUENCE",
>+ pub->alltables ? ", " : " ");
>+ }

Critical bug / typo here, I think you meant ALL SEQUENCES instead
of ALL SEQUENCE.

>+ if (pub == NULL)
>+ return (Datum) NULL;

use PG_RETURN_NULL() instead like everywhere else for consistency.

Typos in your commit message and everywhere else in code.. For
example:

"giving" → "given", "thuse" → "thus",
"Comprhensive" → "Comprehensive", "fro" → "for"

Need to run the patch through a spelling / typo check tool

Also, you should test pg_get_publication_ddl() with non-existent
publication as well.

Best regards

Cary Huang
Highgo Software

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tatsuo Ishii 2026-02-14 00:23:10 Re: Row pattern recognition
Previous Message Chao Li 2026-02-13 23:37:07 Re: Make wal_receiver_timeout configurable per subscription