Re: How to ensure that a stored function always returns TRUE or FALSE? - Mailing list pgsql-general

From David G. Johnston
Subject Re: How to ensure that a stored function always returns TRUE or FALSE?
Date
Msg-id CAKFQuwbsB2g3LD=JUgZsdS10MY=u4zX0r4i=maVFw8+K5MeaXw@mail.gmail.com
Whole thread Raw
In response to Re: How to ensure that a stored function always returns TRUE or FALSE?  (Alexander Farber <alexander.farber@gmail.com>)
Responses Re: How to ensure that a stored function always returns TRUE or FALSE?  (Alexander Farber <alexander.farber@gmail.com>)
List pgsql-general
On Wed, Mar 2, 2016 at 5:39 AM, Alexander Farber <alexander.farber@gmail.com> wrote:
Thanks Vitaly, but instead of inverting the IF-condition I would prefer to make my function more robust, since it is kind of security-related and I might forget about the special IF-condition later when using it elsewhere...


​Merlin's point about inlining and SQL language functions not withstanding:​

You should consider writing a variation of the check_user function that returns VOID or raises an exception and use is like an assertion.

​I would consider raising an exception if in_auth is NULL as I'd potentially consider such a situation to represent mis-usage of the function which should gets it own error instead of simply indicating that the validation failed.
​David J.​

pgsql-general by date:

Previous
From: "David Bennett"
Date:
Subject: Re: Looking for pure C function APIs for server extension: language handler and SPI
Next
From: Rémi Cura
Date:
Subject: Re: bloated postgres data folder, clean up