| From: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | Matt Peterson <matt(at)caldera(dot)com>, <dz(at)cs(dot)unitn(dot)it>, <pgsql-bugs(at)postgresql(dot)org> |
| Subject: | Re: SEGV in contrib/array/array_iterator.c |
| Date: | 2002-04-02 20:05:48 |
| Message-ID: | 20020402115926.F79618-100000@megazone23.bigpanda.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On Tue, 2 Apr 2002, Tom Lane wrote:
> Matt Peterson <matt(at)caldera(dot)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.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2002-04-02 20:22:05 | Re: SEGV in contrib/array/array_iterator.c |
| Previous Message | Tom Lane | 2002-04-02 18:29:27 | Re: SEGV in contrib/array/array_iterator.c |