Thread: BUG #7882: plperl poor error message

BUG #7882: plperl poor error message

From
jeff.janes@gmail.com
Date:
The following bug has been logged on the website:

Bug reference:      7882
Logged by:          Jeff Janes
Email address:      jeff.janes@gmail.com
PostgreSQL version: 9.2.3
Operating system:   Linux
Description:        =


If plperl.on_init attempts to load a module which does not exist, then
attempts to use plperl give a reasonable error message upon first attempt,
but after that the error message is rather cryptic.

in postgresql.conf:

plperl.on_init=3D'use Nonexistent::Module;'

CREATE OR REPLACE FUNCTION perlfunc(text) RETURNS text AS $BODY$ return
scalar reverse $_[0]; $BODY$ LANGUAGE plperl;

ERROR:  Can't locate Nonexistent/Module.pm in @INC (@INC contains: ...    .)
at -e line 98.
BEGIN failed--compilation aborted
CONTEXT:  while parsing Perl initialization

Upon a second attempt, the error becomes much less useful:

CREATE OR REPLACE FUNCTION perlfunc(text) RETURNS text AS $BODY$ return
scalar reverse $_[0]; $BODY$ LANGUAGE plperl;

ERROR:  attempt to redefine parameter "plperl.use_strict"