Re: Event Triggers unable to capture the DDL script executed - Mailing list pgsql-general

From Neethu P
Subject Re: Event Triggers unable to capture the DDL script executed
Date
Msg-id MWHPR12MB1792321FB85A252ED091BBC4D1AF9@MWHPR12MB1792.namprd12.prod.outlook.com
Whole thread Raw
In response to Re: Event Triggers unable to capture the DDL script executed  (Laurenz Albe <laurenz.albe@cybertec.at>)
Responses Re: Event Triggers unable to capture the DDL script executed
List pgsql-general
Hi Laurenz,

Is it possible to access the pg_ddl_command using C function? In the shared links, I couldn't find one. Can you please share an example for the same?

Thanks & Regards,
Neethu

From: Laurenz Albe <laurenz.albe@cybertec.at>
Sent: Thursday, February 23, 2023 4:20 PM
To: Neethu P <neeth_3@hotmail.com>; n.kobzarev@aeronavigator.ru <n.kobzarev@aeronavigator.ru>; 'pgsql-general' <pgsql-general@postgresql.org>
Subject: Re: Event Triggers unable to capture the DDL script executed
 
On Thu, 2023-02-23 at 04:10 +0000, Neethu P wrote:
> Actually, current_query() may not help us in our case, as we won't be able
> to capture the ddl statement completely in case if it's in multiple lines.

Multiple lines should not be a problem.  The problems I see are

- you won't catch DDL statements issued in a function with that, since you
  only see the top-level statement

- if you have the DDL statement as string, you need to parse it, which is
  non-trivial

> Can you please help me with the event trigger in C? & also how can we
> integrate it with our current postgresql DB?

In an e-mail, I cannot do much beyond pointing you to the documentation:
https://www.postgresql.org/docs/current/event-trigger-interface.html
There is also a simple example:
https://www.postgresql.org/docs/current/event-trigger-example.html

Getting used to reading and writing PostgreSQL server code takes a while.

Yours,
Laurenz Albe

pgsql-general by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: Give me details of some attributes!!
Next
From: Jan Bilek
Date:
Subject: ERROR: unsupported Unicode escape sequence - in JSON-type column