I was investigating a bug in an 8.4.1 production system and distilled a
test case down to this:
CREATE OR REPLACE FUNCTION bar() RETURNS integer AS $$ #die 'BANG!'; # causes server process to exit(2)
#alternative - causes server process to exit(255) spi_exec_query("invalid sql statement"); $$ language plperl;
--plperl or plperlu CREATE OR REPLACE FUNCTION foo() RETURNS integer AS $$ spi_exec_query("SELECT * FROM
bar()"); return 1; $$ LANGUAGE plperlu; -- must be opposite to language of bar SELECT * FROM bar(); --
throwsexception normally SELECT * FROM foo(); -- causes the server to exit abnormaly
before then rereading the 8.4.2 release notes and seeing that the bug
was already fixed. D'oh!
I see the test suite doesn't have any plperlu tests at all.
Is there any reason for that?
Tim.