Re: [PATCH] Add pg_get_table_ddl() to reconstruct CREATE TABLE statements

From: Akshay Joshi <akshay(dot)joshi(at)enterprisedb(dot)com>
To: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
Cc: li(dot)evan(dot)chao(at)gmail(dot)com, zsolt(dot)parragi(at)percona(dot)com, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: [PATCH] Add pg_get_table_ddl() to reconstruct CREATE TABLE statements
Date: 2026-06-23 09:22:37
Message-ID: CANxoLDdq06oXRYuzYfn2gkn3yfoxp=nA14xu5p+qSEOzpHXEMQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jun 23, 2026 at 12:51 PM Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
wrote:

> At Mon, 22 Jun 2026 18:10:53 +0530, Akshay Joshi <
> akshay(dot)joshi(at)enterprisedb(dot)com> wrote in
> > The v9 patch is ready for review.
>
> I have not looked closely at the DDL generation logic itself, but I
> have a few comments on how pg_get_table_ddl handles its options.
>
> Since pg_get_table_ddl_internal() appears to copy these values into
> TableDdlContext almost immediately, I wonder whether TableDdlContext
> could be initialized by the caller instead.
>
> Using positional boolean arguments is probably fine when there are
> only a handful of options, but with around fifteen of them the current
> approach seems somewhat error-prone.
>
> It might also be clearer to initialize the default values first, and
> then override only the fields corresponding to explicitly specified
> options, rather than folding the default handling and option lookup
> into the same expression.
>

I assume that changing the implementation model, as I mentioned in my other
email, will solve this problem as well. We can drop the entire includes_*
family and only_foreign_keys, and replace them with two mutually exclusive
variadic keys:
include => 'kind1,kind2,...' — emit only these kinds
exclude => 'kind1,kind2,...' — emit everything except these kinds
>
>
> Regards,
>
> --
> Kyotaro Horiguchi
> NTT Open Source Software Center
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Chao Li 2026-06-23 09:29:04 Re: Fix variadic argument types for pg_get_xxx_ddl() functions
Previous Message Dean Rasheed 2026-06-23 09:12:43 Re: Global temporary tables