On Mon, 2026-10-12 at 14:36 +0000, Färber, Franz-Josef (StMUK) wrote:
> > > 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
> > >
> > >
> > > How to find out the table involved and the privileges?
> >
> > I think you have to write a C function that can do something with 
> > pg_ddl_command.
> 
> A solution usable from SQL or plpgsql would've been nice.

Indeed.  I am surprised that the table is not reported for a GRANT
statement.  Perhaps it is because GRANT operates on all kinds of objects,
not sure.  You could write a patch for PostgreSQL to improve that.

Yours,
Laurenz Albe


Reply via email to