From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Tels <nospam-pg-abuse(at)bloodgate(dot)com> |
Cc: | Andreas Karlsson <andreas(at)proxel(dot)se>, Andres Freund <andres(at)anarazel(dot)de>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Declaring a strict function returns not null / eval speed |
Date: | 2019-10-20 14:27:19 |
Message-ID: | 13658.1571581639@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Tels <nospam-pg-abuse(at)bloodgate(dot)com> writes:
> On 2019-10-20 13:30, Andreas Karlsson wrote:
>> Agreed, this sounds like something useful to do since virtually all
>> strict functions cannot return NULL, especially the ones which are
>> used in tight loops. The main design issue seems to be to think up a
>> name for this new level of strictness which is not too confusing for
>> end users.
> STRICT NONULL? That way you could do
> CREATE FUNCTION f1 ... STRICT;
> CREATE FUNCTION f2 ... STRICT NONULL;
> CREATE FUNCTION f3 ... NONULL;
> and the last wold throw "not implementet yet"? "NEVER RETURNS NULL"
> would also ryme with the existing "RETURNS NULL ON NULL INPUT", but I
> find the verbosity too high.
"RETURNS NOT NULL", perhaps? That'd have the advantage of not requiring
any new keyword.
I'm a little bit skeptical of the actual value of adding this additional
level of complexity, but I suppose we can't determine that reliably
without doing most of the work :-(
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tels | 2019-10-20 16:02:02 | Re: Declaring a strict function returns not null / eval speed |
Previous Message | Isaac Morland | 2019-10-20 13:42:59 | Re: jsonb_set() strictness considered harmful to data |