From: | Florents Tselai <florents(dot)tselai(at)gmail(dot)com> |
---|---|
To: | Yurii Rashkovskii <yrashk(at)omnigres(dot)com> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: SQL function to access to `creating_extension` |
Date: | 2025-04-19 09:52:40 |
Message-ID: | 8ACA6321-D78B-4FBB-9685-8F51BF635115@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> On 19 Apr 2025, at 4:18 AM, Yurii Rashkovskii <yrashk(at)omnigres(dot)com> wrote:
>
> Hi,
>
> I propose to introduce `pg_creating_extension()` function that would return the OID of the extension being currently created (or `null` if none is).
>
> The core motivation for it is to be able to establish data provenance in tables created by extensions to be used in `pg_extension_config_dump` configuration. This way, even if a secondary extension inserts data, it can still be excluded from the dump by tracking data provenance in a column with a default. Something like
>
> ```
> create table my_config (
> --- ...
> extension_provenance oid default pg_creating_extension()
> )
> ```
>
> This would allow for a generalized exclusion in pg_extension_config_dump.
>
> I've attached a draft patch for this simple function. I am happy to finalize it with tests and documentation if there is a consensus on the shape.
>
> --
> Founder at Omnigres
> https://omnigres.com <https://omnigres.com/><v1-0001-pg_creating_extension-to-inspect-if-an-extension-is-.patch>
Hi Yurii,
+1 from me.
I can see this being helpful, especially when dealing with shared tables or managing extension-specific data in configuration dumps.
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2025-04-19 10:04:28 | Re: Typos in the code and README |
Previous Message | Alexander Lakhin | 2025-04-19 08:00:00 | Re: Typos in the code and README |