pgsql: Use appropriate command type when retrieving relation's policies

Поиск
Список
Период
Сортировка
От Joe Conway
Тема pgsql: Use appropriate command type when retrieving relation's policies
Дата
Msg-id E1ZKqrK-0006oz-Ub@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Use appropriate command type when retrieving relation's policies.

When retrieving policies, if not working on the root target relation,
we actually want the relation's SELECT policies, regardless of
the top level query command type. For example in UPDATE t1...FROM t2
we need to apply t1's UPDATE policies and t2's SELECT policies.
Previously top level query command type was applied to all relations,
which was wrong. Add some regression coverage to ensure we don't
violate this principle in the future.

Report and patch by Dean Rasheed. Cherry picked from larger refactoring
patch and tweaked by me. Back-patched to 9.5 where RLS was introduced.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/1e15b212290bf6daff752f20e9e0356e4dac6e09

Modified Files
--------------
src/backend/rewrite/rowsecurity.c         |   12 ++++-
src/test/regress/expected/rowsecurity.out |   83 +++++++++++++++++++++++++++++
src/test/regress/sql/rowsecurity.sql      |   40 ++++++++++++++
3 files changed, 134 insertions(+), 1 deletion(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Avoid some zero-divide hazards in the planner.
Следующее
От: Joe Conway
Дата:
Сообщение: pgsql: Use appropriate command type when retrieving relation's policies