[COMMITTERS] pgsql: Handle ALTER EXTENSION ADD/DROP with pg_init_privs

Поиск
Список
Период
Сортировка
От Stephen Frost
Тема [COMMITTERS] pgsql: Handle ALTER EXTENSION ADD/DROP with pg_init_privs
Дата
Msg-id E1cY3En-00024S-U0@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Handle ALTER EXTENSION ADD/DROP with pg_init_privs

In commit 6c268df, pg_init_privs was added to track the initial
privileges of catalog objects and extensions.  Unfortunately, that
commit didn't include understanding of ALTER EXTENSION ADD/DROP, which
allows the objects associated with an extension to be changed after the
initial CREATE EXTENSION script has been run.

The result of this meant that ACLs for objects added through
ALTER EXTENSION ADD were not recorded into pg_init_privs and we would
end up including those ACLs in pg_dump when we shouldn't have.

This commit corrects that by making sure to have pg_init_privs updated
when ALTER EXTENSION ADD/DROP is run, recording the permissions as they
are at ALTER EXTENSION ADD time, and removing any if/when ALTER
EXTENSION DROP is called.

This issue was pointed out by Moshe Jacobson as commentary on bug #14456
(which was actually a bug about versions prior to 9.6 not handling
custom ACLs on extensions correctly, an issue now addressed with
pg_init_privs in 9.6).

Back-patch to 9.6 where pg_init_privs was introduced.

Branch
------
master

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

Modified Files
--------------
src/backend/catalog/aclchk.c                       | 436 +++++++++++++++++++--
src/backend/commands/extension.c                   |  21 +
src/include/utils/acl.h                            |   4 +
.../modules/test_pg_dump/expected/test_pg_dump.out | 100 ++++-
src/test/modules/test_pg_dump/sql/test_pg_dump.sql | 108 ++++-
src/test/modules/test_pg_dump/t/001_base.pl        |  92 +++++
6 files changed, 732 insertions(+), 29 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: [COMMITTERS] pgsql: Fix typo in comment.
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: [COMMITTERS] pgsql: Remove leftover reference to "indirect blocks" in comment.