On Wed, 13 Dec 2006, Tom Lane wrote:
Marc Evans <Marc@xxxxxxxxxxxxxxxxxxx> writes:
Is it accurate for me to believe that there is no way to catch exception
within plperl?
You do it the same way you trap any other error in perl ...
OK, I must be missing something obvious:
c3i=> CREATE OR REPLACE FUNCTION foo_trigger() RETURNS TRIGGER AS $$
c3i$> eval { spi_exec_query('INSERT INTO FOO_BAR VALUES(1)'); } ||
c3i$> spi_exec_query('SELECT 1 as foo');
c3i$> $$ LANGUAGE plperl;
ERROR: creation of Perl function failed: 'eval "string"' trapped by
operation mask at line 2.
- Marc