Re: What happened to the is_<type> family of functions proposal?

Jeff Davis <pgsql@j-davis.com>

From: Jeff Davis <pgsql@j-davis.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Greg Stark <gsstark@mit.edu>, Alvaro Herrera <alvherre@commandprompt.com>, Colin 't Hart <colinthart@gmail.com>, Andrew Dunstan <andrew@dunslane.net>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2010-09-22T01:54:07Z
Lists: pgsql-hackers
On Tue, 2010-09-21 at 19:55 -0400, Robert Haas wrote:
> OK.  This is one of the things I don't understand.  Why does throwing
> an error imply that we need to abort the current transaction?  Why
> can't we just catch the longjmp() and trundle onwards?  Obviously,
> that's unsafe if a pretty wide variety of cases, but if you're just
> scrutinizing the input string (even with a little bit of read-only
> database access) it's not obvious to me what can go wrong.  (I assume
> there is something, but I don't know what it is...)

The worry (from me) would be the "little bit of read-only database
access". If you SPI_connect() without an SPI_finish(), that sounds like
a potential problem (as would anything else that requires cleanup).

Regards,
	Jeff Davis