-- the language and call ordering of this test sequence is useful
CREATEORREPLACE FUNCTION bar() RETURNS integerAS $$
#die 'BANG!'; # causes server process toexit(2)
# alternative - causes server process toexit(255)
spi_exec_query("invalid sql statement");
$$ language plperl; -- compile plperl code
CREATEORREPLACE FUNCTION foo() RETURNS integerAS $$
spi_exec_query("SELECT * FROM bar()"); return1;
$$ LANGUAGE plperlu; -- compile plperlu code
SELECT * FROM bar(); -- throws exception normally (running plperl) SELECT * FROM foo(); -- used to cause backend crash (after switching to plperlu)
-- plperl first createorreplace function foo(text) returns text language plperl as'shift'; select foo('hey'); createorreplace function foo(text) returns text language plperlu as'shift'; select foo('hey'); createorreplace function foo(text) returns text language plperl as'shift'; select foo('hey');
-- plperlu first createorreplace function bar(text) returns text language plperlu as'shift'; select bar('hey'); createorreplace function bar(text) returns text language plperl as'shift'; select bar('hey'); createorreplace function bar(text) returns text language plperlu as'shift'; select bar('hey');
-- -- Make sure we can't use/require things in plperl --
CREATEORREPLACE FUNCTION use_plperlu() RETURNS void LANGUAGE plperlu AS $$ use Errno;
$$;
CREATEORREPLACE FUNCTION use_plperl() RETURNS void LANGUAGE plperl AS $$ use Errno;
$$;
-- make sure our overloaded require op gets restored/set correctly select use_plperlu();
CREATEORREPLACE FUNCTION use_plperl() RETURNS void LANGUAGE plperl AS $$ use Errno;
$$;
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet am 2026-08-07)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.