Re: pgsql: Do execGrouping.c via expression eval machinery, take two.

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: pgsql: Do execGrouping.c via expression eval machinery, take two.
Дата
Msg-id 20180217000337.lfsdvro3l6ccsksp@alap3.anarazel.de
обсуждение исходный текст
Ответ на pgsql: Do execGrouping.c via expression eval machinery, take two.  (Andres Freund <andres@anarazel.de>)
Ответы Re: pgsql: Do execGrouping.c via expression eval machinery, take two.  (Andres Freund <andres@anarazel.de>)
Re: pgsql: Do execGrouping.c via expression eval machinery, take two.  (Andres Freund <andres@anarazel.de>)
Список pgsql-committers
Hi,

On 2018-02-16 22:48:39 +0000, Andres Freund wrote:
> Do execGrouping.c via expression eval machinery, take two.
> 
> This has a performance benefit on own, although not hugely so. The
> primary benefit is that it will allow for to JIT tuple deforming and
> comparator invocations.
> 
> Large parts of this were previously committed (773aec7aa), but the
> commit contained an omission around cross-type comparisons and was
> thus reverted.
> 
> Author: Andres Freund
> Discussion: https://postgr.es/m/20171129080934.amqqkke2zjtekd4t@alap3.anarazel.de

This triggered a failure on rhinoceros, in the sepgsql test:
https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=rhinoceros&dt=2018-02-16%2023%3A45%3A02

The relevant diff is:
+ LOG:  SELinux: allowed { execute } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0-s0:c0.c255
tcontext=system_u:object_r:sepgsql_proc_exec_t:s0tclass=db_procedure name="pg_catalog.int4eq(integer,integer)"
 
and that's because we now invoke the function access hook for grouping
equal, which we previously didn't.

I personally think the new behaviour makes more sense, but if somebody
wants to argue differently? The only argument against I can see is that
there's some other cases where also don't yet invoke it, but that seems
weak.

I never fully grasped the exact use-case for the function execute hook
is, so maybe Kaigai and/or Robert could comment?

Greetings,

Andres Freund


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

Предыдущее
От: Andres Freund
Дата:
Сообщение: pgsql: Do execGrouping.c via expression eval machinery, take two.
Следующее
От: Andres Freund
Дата:
Сообщение: pgsql: Allow tupleslots to have a fixed tupledesc,use in executor node