Re: Allow database owners to CREATE EVENT TRIGGER
Steve Chavez <steve@supabase.io>
From: Steve Chavez <steve@supabase.io>
To: "David G. Johnston" <david.g.johnston@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>,
Aleksander Alekseev <aleksander@timescale.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2025-04-23T00:18:39Z
Lists: pgsql-hackers
Attachments
- v2-0001-Allow-regular-users-to-create-event-triggers.patch (text/x-patch) patch v2-0001
> alter event trigger command which doesn’t need to be exercised here That part does need to be tested, I modified `AlterEventTriggerOwner_internal` to allow altering owners to regular users. Before it was only restricted to superusers. > Actually, leave the other member around, but not granted ownership, and both create tables, to demonstrate that a non-superuser and non-owner is unaffected by the trigger. I've updated the tests accordingly. Please let me know if that's what you had in mind. Best regards, Steve Chavez On Sun, 20 Apr 2025 at 23:13, David G. Johnston <david.g.johnston@gmail.com> wrote: > On Sunday, April 20, 2025, Steve Chavez <steve@supabase.io> wrote: > >> > Also, this looks unconventional… >> > EventTriggerCacheItem *item = (EventTriggerCacheItem*) lfirst_oid(lc); >> >> Just noticed the mistake there, I would have expected a compilation >> error. New patch attached with the following change: >> >> EventTriggerCacheItem *item = lfirst(lc); >> >> On Sun, 20 Apr 2025 at 22:55, Steve Chavez <steve@supabase.io> wrote: >> >>> Sorry, attached the output file. >>> >>> > You can remove role member_1 and trigger..1 and “create table foo” from > the nosuper script without any loss of test coverage. Or member2 trigger2 > table_bar along with the alter event trigger command which doesn’t need to > be exercised here. Ownership is all that matters. Whether come to > directly or via alter. > > Actually, leave the other member around, but not granted ownership, and > both create tables, to demonstrate that a non-superuser and non-owner is > unaffected by the trigger. > > David J. > >