On 19.03.24 10:34, Daniel Gustafsson wrote:
>>> "Only for local objects"
>>> is there any reference explaining "local objects"?
>>> I think local object means objects that only affect one single database?
> That's a bigger problem than the table representation, we never define what
> "local object" mean anywhere in the EVT docs. EV's are global for a database,
> but not a cluster, so I assume what this means is that EVs for non-DDL commands
> like COMMENT can only fire for a specific relation they are attached to and not
> database wide?
I think we could replace this whole table by a few definitions:
- "Local objects" are everything except "global objects".
- "Global objects", for the purpose of event triggers, are databases,
tablespaces, roles, role memberships, and parameter ACLs.
- DDL commands are all commands except SELECT, INSERT, UPDATE, DELETE,
MERGE.
- Events triggers are supported for all DDL commands on all local objects.
Is this table saying anything else?
Is there any way to check if it's even correct? For example, it shows
that the event "sql_drop" can fire for a few ALTER commands, but how is
this determined? If tomorrow someone changes ALTER DOMAIN to possibly
do a table rewrite, will they remember to update this table?