[PATCH] Add pg_get_type_ddl() to retrieve the CREATE TYPE statement - Mailing list pgsql-hackers

From Philip Alger
Subject [PATCH] Add pg_get_type_ddl() to retrieve the CREATE TYPE statement
Date
Msg-id CAPXBC8J2-8GCaRgOf_LW3+Uk7nVUrQ8J1YxazaifX_kwpGiU3w@mail.gmail.com
Whole thread Raw
Responses Re: [PATCH] Add pg_get_type_ddl() to retrieve the CREATE TYPE statement
Re: [PATCH] Add pg_get_type_ddl() to retrieve the CREATE TYPE statement
List pgsql-hackers
Hello Hackers, 

I am submitting a patch as part of the Retail DDL functions project described here [1]. This patch creates a function called pg_get_type_ddl designed to retrieve the DDL statement for CREATE TYPE. Users can get the DDL by providing a TYPE name like the following for the ENUM type:

   SELECT pg_get_type_ddl('type_name_enum');

which gives you:

                      pg_get_type_ddl                      
------------------------------------------------------------
 CREATE TYPE public.type_name_enum AS ENUM ('one', 'two', 'three');

I split up the types range, enum, shell, composite, and a base type into different functions which support `pg_get_type_ddl`. Otherwise, the function seemed too long. 

This patch includes documentation, comments, and regression tests, all of which have run successfully.


--
Best, 
Phil Alger
Attachment

pgsql-hackers by date:

Previous
From: Jon Jenkins
Date:
Subject: Potential bug introduced in PG17 with query parallelization - plan flip
Next
From: Masahiko Sawada
Date:
Subject: Re: POC: enable logical decoding when wal_level = 'replica' without a server restart