Re: Only owners can ANALYZE tables...seems overly restrictive

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Stephen Frost <sfrost(at)snowman(dot)net>
Cc: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Only owners can ANALYZE tables...seems overly restrictive
Date: 2016-02-29 14:52:42
Message-ID: CAKFQuwZncrVT1YiMCwus8xKuar9kmbEp-TDET5se7oXx9ZjcKA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, Feb 29, 2016 at 6:31 AM, Stephen Frost <sfrost(at)snowman(dot)net> wrote:

> * David G. Johnston (david(dot)g(dot)johnston(at)gmail(dot)com) wrote:
> > Given the amount of damage a person with write access to a table can get
> > into it seems pointless to not allow them to analyze the table after
> their
> > updates - since best practices would say that normal work with a table
> > should not be performed by an owner.
> >
> > I should the check for whether a given user can or cannot analyze a table
> > should be whether the user has INSERT, UPDATE, or DELETE privileges.
>
> Realistically, ANALYZE is a background/maintenance task that autovacuum
> should be handling for you.
>

​Then my recent experience of adding a bunch of records and having the
subsequent select query take forever because the table wasn't analyzed is
not supposed to happen? What am I doing wrong then that autovacuum didn't
run for me?​

> > I suppose row-level-security might come into play here...
>
> Yes, you may only have access to a subset of the table.
>
>
​TBH, since you cannot see the data being analyzed I don't see a security
implication here if you allow someone to ANALYZE the whole table even when
RLS is in place.​

If we had plenty more bits to allow ANALYZE to be independently
> GRANT'able, then maybe, but those are a limited resource.
>

​The planner and system performance seems important enough to give it such
a resource. But as I stated initially I personally believe that a user
with INSERT/DELETE/UPDATE permissions on a table (maybe require all three)
should also be allowed to ANALYZE said table.​

David J.​

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message David G. Johnston 2016-02-29 15:08:49 Re: Only owners can ANALYZE tables...seems overly restrictive
Previous Message Guillaume Lelarge 2016-02-29 14:22:46 Re: Only owners can ANALYZE tables...seems overly restrictive