Re: ExecRTCheckPerms() and many prunable partitions (checkAsUser)

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: ExecRTCheckPerms() and many prunable partitions (checkAsUser)
Дата
Msg-id 20230217120246.525iztpb4z5dcgxp@alvherre.pgsql
обсуждение исходный текст
Ответ на Re: ExecRTCheckPerms() and many prunable partitions (checkAsUser)  (Amit Langote <amitlangote09@gmail.com>)
Ответы Re: ExecRTCheckPerms() and many prunable partitions (checkAsUser)  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
Re: ExecRTCheckPerms() and many prunable partitions (checkAsUser)  (Amit Langote <amitlangote09@gmail.com>)
Список pgsql-hackers
On 2022-Dec-11, Amit Langote wrote:

> While staring at the build_simple_rel() bit mentioned above, I
> realized that this code fails to set userid correctly in the
> inheritance parent rels that are child relations of subquery parent
> relations, such as UNION ALL subqueries.  In that case, instead of
> copying the userid (= 0) of the parent rel, the child should look up
> its own RTEPermissionInfo, which should be there, and use the
> checkAsUser value from there.  I've attached 0002 to fix this hole.  I
> am not sure whether there's a way to add a test case for this in the
> core suite.

I gave this a look and I thought it was clearer to have the new
condition depend on rel->reloptkind instead parent or no.

I tried a few things for a new test case, but I was unable to find
anything useful.  Maybe an intermediate view, I thought; no dice.
Maybe one with a security barrier would do?  Anyway, for now I just kept
what you added in v2.

-- 
Álvaro Herrera         PostgreSQL Developer  —  https://www.EnterpriseDB.com/

Вложения

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

Предыдущее
От: vignesh C
Дата:
Сообщение: Re: Support logical replication of DDLs
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: ExecRTCheckPerms() and many prunable partitions (checkAsUser)