Re: Predefined role pg_maintenance for VACUUM, ANALYZE, CHECKPOINT.

Stephen Frost <sfrost@snowman.net>

From: Stephen Frost <sfrost@snowman.net>
To: Jeff Davis <pgsql@j-davis.com>
Cc: "Bossart, Nathan" <bossartn@amazon.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2021-10-26T20:02:55Z
Lists: pgsql-hackers
Greetings,

* Jeff Davis (pgsql@j-davis.com) wrote:
> On Tue, 2021-10-26 at 00:07 +0000, Bossart, Nathan wrote:
> > It feels a bit excessive to introduce a new predefined role just for
> > this.  Perhaps this could be accomplished with a new function that
> > could be granted.
> 
> It would be nice if the syntax could be used, since it's pretty
> widespread. I guess it does feel excessive to have its own predefined
> role, but at the same time it's hard to group a command like CHECKPOINT
> into a category. Maybe if we named it something like pg_performance or
> something we could make a larger group?

For the use-case presented, I don't really buy off on this argument.
We're talking about benchmarking tools, surely they can be and likely
already are updated with some regularity for new major versions of PG.
I wonder also if there aren't other things besides this that would need
to be changed for them to work as a non-superuser anyway too, meaning
this would be just one change among others that they'd need to make.

In this specific case, I'd be more inclined to provide a function rather
than an explicit predefined role for this one thing.

Thanks,

Stephen

Commits

  1. Add pg_checkpointer predefined role for CHECKPOINT command.