pgsql: Represent columns requiring insert and update privileges indente

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Represent columns requiring insert and update privileges indente
Date: 2015-05-07 22:25:44
Message-ID: E1YqUEi-00047X-Uv@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Represent columns requiring insert and update privileges indentently.

Previously, relation range table entries used a single Bitmapset field
representing which columns required either UPDATE or INSERT privileges,
despite the fact that INSERT and UPDATE privileges are separately
cataloged, and may be independently held. As statements so far required
either insert or update privileges but never both, that was
sufficient. The required permission could be inferred from the top level
statement run.

The upcoming INSERT ... ON CONFLICT UPDATE feature needs to
independently check for both privileges in one statement though, so that
is not sufficient anymore.

Bumps catversion as stored rules change.

Author: Peter Geoghegan
Reviewed-By: Andres Freund

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/2c8f4836db058d0715bc30a30655d646287ba509

Modified Files
--------------
contrib/postgres_fdw/postgres_fdw.c | 2 +-
contrib/sepgsql/dml.c | 31 +++++---
src/backend/commands/copy.c | 2 +-
src/backend/commands/createas.c | 2 +-
src/backend/commands/trigger.c | 30 +++----
src/backend/executor/execMain.c | 124 ++++++++++++++++++-----------
src/backend/nodes/copyfuncs.c | 3 +-
src/backend/nodes/equalfuncs.c | 3 +-
src/backend/nodes/outfuncs.c | 3 +-
src/backend/nodes/readfuncs.c | 3 +-
src/backend/optimizer/plan/setrefs.c | 6 +-
src/backend/optimizer/prep/prepsecurity.c | 6 +-
src/backend/optimizer/prep/prepunion.c | 8 +-
src/backend/parser/analyze.c | 4 +-
src/backend/parser/parse_relation.c | 21 +++--
src/backend/rewrite/rewriteHandler.c | 52 +++++++-----
src/include/catalog/catversion.h | 2 +-
src/include/nodes/parsenodes.h | 14 ++--
18 files changed, 192 insertions(+), 124 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2015-05-08 03:22:29 Re: pgsql: hstore_plpython: Support tests on Python 2.3
Previous Message Alvaro Herrera 2015-05-07 16:02:27 pgsql: Improve BRIN infra, minmax opclass and regression test