pgsql: Remove superuser checks in pgstattuple - Mailing list pgsql-committers

From Stephen Frost
Subject pgsql: Remove superuser checks in pgstattuple
Date
Msg-id E1bpnKZ-0002qJ-CL@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Remove superuser checks in pgstattuple

Now that we track initial privileges on extension objects and changes to
those permissions, we can drop the superuser() checks from the various
functions which are part of the pgstattuple extension and rely on the
GRANT system to control access to those functions.

Since a pg_upgrade will preserve the version of the extension which
existed prior to the upgrade, we can't simply modify the existing
functions but instead need to create new functions which remove the
checks and update the SQL-level functions to use the new functions
(and to REVOKE EXECUTE rights on those functions from PUBLIC).

Thanks to Tom and Andres for adding support for extensions to follow
update paths (see: 40b449a), allowing this patch to be much smaller
since no new base version script needed to be included.

Approach suggested by Noah.

Reviewed by Michael Paquier.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/fd321a1dfd64d30bf1652ea6b39b654304f68ae4

Modified Files
--------------
contrib/pgstattuple/Makefile                  |   7 +-
contrib/pgstattuple/pgstatapprox.c            |  39 ++++++--
contrib/pgstattuple/pgstatindex.c             | 122 ++++++++++++++++++++++++--
contrib/pgstattuple/pgstattuple--1.4--1.5.sql | 111 +++++++++++++++++++++++
contrib/pgstattuple/pgstattuple.c             |  41 +++++++++
contrib/pgstattuple/pgstattuple.control       |   2 +-
doc/src/sgml/pgstattuple.sgml                 |   8 ++
7 files changed, 315 insertions(+), 15 deletions(-)


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: pgsql: Fix compiler warnings
Next
From: Magnus Hagander
Date:
Subject: pgsql: Retry opening new segments in pg_xlogdump --folllow