SELECT version();
--PostgreSQL 18.6 (Debian 18.6-1.pgdg13+2) on x86_64-pc-linux-gnu, compiled by
gcc (Debian 14.2.0-19) 14.2.0, 64-bit
CREATE FUNCTION ddl_command_end_trigger_func() RETURNS event_trigger
LANGUAGE plpgsql
AS $$
BEGIN
RAISE NOTICE USING MESSAGE = (
SELECT concat_ws(', ', classid, objid, objsubid, command_tag,
object_type, schema_name, object_identity)
FROM pg_event_trigger_ddl_commands()
);
END
$$;
CREATE EVENT TRIGGER ddl_command_end_trigger ON ddl_command_end EXECUTE
FUNCTION ddl_command_end_trigger_func();
CREATE TABLE t();
GRANT SELECT ON TABLE t TO postgres;
Regards,
Franz-Josef Färber
-----Ursprüngliche Nachricht-----
Von: Adrian Klaver <[email protected]>
Gesendet: Montag, 12. Oktober 2026 16:18
An: Färber, Franz-Josef (StMUK) <[email protected]>;
[email protected]
Betreff: Re: pg_event_trigger_ddl_commands after GRANT is quite empty
On 10/12/26 1:47 AM, Färber, Franz-Josef (StMUK) wrote:
> Dear Postgres Community,
>
> pg_event_trigger_ddl_commands after GRANT is quite empty.
>
> If I execute: GRANT SELECT ON TABLE t TO r;
>
> . and in a trigger function I have:
>
> SELECT classid, objid, objsubid, command_tag, object_type,
> schema_name, object_identity
> FROM pg_event_trigger_ddl_commands();
>
> This gives me:
>
> null, null, null, GRANT, TABLE, null, null
>
Postgres version?
What is the complete trigger and trigger function definition?
>
> How to find out the table involved and the privileges?
>
>
> Regards,
> Franz-Josef Färber
>
>
--
Adrian Klaver
[email protected]