Re: multirange constructor strictness

Поиск
Список
Период
Сортировка
От Alexander Korotkov
Тема Re: multirange constructor strictness
Дата
Msg-id CAPpHfdvF0=xCdaOvnbWhJuYnWWeA1dbwkNTkfJ2xcswbn9Fckw@mail.gmail.com
обсуждение исходный текст
Ответ на multirange constructor strictness  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
Список pgsql-hackers
On Wed, Apr 21, 2021 at 11:57 PM Peter Eisentraut
<peter.eisentraut@enterprisedb.com> wrote:
> The multirange constructors created in makeMultirangeConstructors() are:
>
> multirange_constructor0 -> not strict
> multirange_constructor1 -> strict
> multirange_constructor2 -> not strict
>
> And both multirange_constructor1 and multirange_constructor2 contain
> code like
>
> /*
>   * These checks should be guaranteed by our signature, but let's do them
>   * just in case.
>   */
> if (PG_ARGISNULL(0))
>      ereport(ERROR,
>              (errcode(ERRCODE_NULL_VALUE_NOT_ALLOWED),
>               errmsg("multirange values cannot contain NULL members")));
>
> In case of multirange_constructor2 the "should be guaranteed" comment is
> not actually true right now.  In case of multirange_constructor1, maybe
> this should be downgraded to an elog or assert or just removed.
>
> Is there a reason why we can't make them all three strict or all not
> strict?  (Obviously, it doesn't matter for multirange_constructor0.)  Is
> the fact that multirange_constructor2 is variadic the issue?  Maybe at
> least some more comments would be helpful.

Thank you for noticing.  I'll take care of it today.

------
Regards,
Alexander Korotkov



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

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: Replication slot stats misgivings
Следующее
От: "houzj.fnst@fujitsu.com"
Дата:
Сообщение: RE: Parallel INSERT SELECT take 2