Re: SEGV in contrib/array/array_iterator.c

Поиск
Список
Период
Сортировка
От Stephan Szabo
Тема Re: SEGV in contrib/array/array_iterator.c
Дата
Msg-id 20020402115926.F79618-100000@megazone23.bigpanda.com
обсуждение исходный текст
Ответ на Re: SEGV in contrib/array/array_iterator.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: SEGV in contrib/array/array_iterator.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
On Tue, 2 Apr 2002, Tom Lane wrote:

> Matt Peterson <matt@caldera.com> writes:
>
> > +     if(value == 0)
> > +     {
> > +         /* elog(NOTICE, "array_iterator: value is null"); */
> > +               return (0);
> > +     }
>
> This patch is certainly wrong, as it will break array_iterator for
> non-pointer datatypes (no, I do not believe your assertion to the
> contrary).
>
> More to the point, inserting explicit tests for null is an obsolete
> approach; the preferred way to do things these days is to mark the SQL
> declarations of such functions with "isStrict".  Would you instead
> update contrib/array to rely on isStrict?

Are the array iterator functions supposed to act sort of like
=ANY/=ALL except across an array instead of a subselect?  If so,
isStrict probably isn't right, since for an empty subselect the return
value does not depend on the element being searched for.  If not,
that would probably be the easiest fix.

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

Предыдущее
От: Jie Liang
Дата:
Сообщение: pg_dump bug
Следующее
От: Tom Lane
Дата:
Сообщение: Re: SEGV in contrib/array/array_iterator.c