Re: IMMUTABLE and PARALLEL SAFE function markings

Поиск
Список
Период
Сортировка
От Stephen Frost
Тема Re: IMMUTABLE and PARALLEL SAFE function markings
Дата
Msg-id 20181127002223.GN3415@tamriel.snowman.net
обсуждение исходный текст
Ответ на Re: IMMUTABLE and PARALLEL SAFE function markings  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers
Greetings,

* Andres Freund (andres@anarazel.de) wrote:
> On 2018-11-26 19:13:17 -0500, Stephen Frost wrote:
> > * Andres Freund (andres@anarazel.de) wrote:
> > > On 2018-11-26 19:05:02 -0500, Stephen Frost wrote:
> > > > Agreed, but I could see us having a regression test which complains if
> > > > it finds any which are marked as immutable but aren't parallel safe.
> > >
> > > That doesn't help if a user writes a query to review the not parallel
> > > safe functions in their installation.
> >
> > I'm really not sure what you're getting at here..?
>
> You replied to me saying it'd be a bad idea to infer parallel safety
> from immutability:

I don't think we should programatically assume it, but given that it's
very likely the case, we should have a check (as you suggested in the
other thread) that makes PG developers at least think about it.

> > > > Surely a simple rule could be made that provolatile='i' trumps
> > > > proparallel.  No need to make them agree.
> > > > [...]
> > >
> > > I think it'd be entirely unacceptable that
> > >   SELECT * FROM pg_proc WHERE proparallel = 's'
> > > wouldn't actually return all the functions that are parallel safe.
> >
> > Agreed, but I could see us having a regression test which complains if
> > it finds any which are marked as immutable but aren't parallel safe.
>
> I'm saying that that doesn't address my concern.

Then I'm unclear as to what the concern here is..?

> > Parallel safe functions should be marked as such.  Immutable functions
> > should be marked as such.  We should not assume that one implies the
> > other, nor should we operate as if they do.
> >
> > My suggestion for a regression test was to make PG developers really
> > think about if their new immutable functions should also be marked as
> > parallel safe, in the event that they forget to mark it as such.  If
> > it's really immutable and not parallel safe, then they need to adjust
> > the expected regression test output (and we can all see it...).
>
> See http://archives.postgresql.org/message-id/20181126234521.rh3grz7aavx2ubjv%40alap3.anarazel.de

Right, so you're also suggestion we have a regression test for it..

I'm starting to wonder if maybe we're in violent agreement here..?

Thanks!

Stephen

Вложения

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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: pg_config wrongly marked as not parallel safe?
Следующее
От: Vik Fearing
Дата:
Сообщение: Re: IMMUTABLE and PARALLEL SAFE function markings