Re: ISSTRICT behavior

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Don Y <pgsql(at)DakotaCom(dot)Net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: ISSTRICT behavior
Date: 2006-05-04 06:48:02
Message-ID: 19686.1146725282@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Don Y <pgsql(at)DakotaCom(dot)Net> writes:
> First, if the function is defined to return an INT16,
> then returning a NULL doesn't make any sense -- since the
> caller doesn't know how to deal with a NULL (it expects
> an INT16, for example).

Really? That would be a caller bug, if it's calling a function
that might return NULL.

> What I am trying to do is make functions more robust.
> As it stands currently, the functions get written and
> compiled "once". Thereafter, someone can FAIL to
> specify STRICT when creating those functions in SQL
> (CREATE FUNCTION...) and leave the server vulnerable
> to having those functions invoked with NULL arguments.

This would be the error of the person specifying the function's
SQL definition. Since there are many ways to crash the system by
writing a C function definition wrongly (eg, give the wrong
datatypes), I can't get very excited about this particular one.
We do make this a superuser-only feature for a reason: you're
expected to be competent enough to get it right.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2006-05-04 06:55:20 Re: ISSTRICT behavior
Previous Message Don Y 2006-05-04 06:45:31 Re: ISSTRICT behavior