*** pgsql/doc/src/sgml/plperl.sgml 2010/04/03 07:22:55 2.83 --- pgsql/doc/src/sgml/plperl.sgml 2010/05/13 16:39:43 2.84 *************** *** 1,4 **** ! PL/Perl - Perl Procedural Language --- 1,4 ---- ! PL/Perl - Perl Procedural Language *************** CREATE TRIGGER test_valid_id_trig *** 1154,1164 **** into a module and loaded by the on_init string. Examples: ! plperl.on_init = '$ENV{NYTPROF}="start=no"; require Devel::NYTProf::PgPLPerl' plperl.on_init = 'use lib "/my/app"; use MyApp::PgInit;' Initialization will happen in the postmaster if the plperl library is included in shared_preload_libraries (see ), in which case extra consideration should be given to the risk of destabilizing the postmaster. --- 1154,1172 ---- into a module and loaded by the on_init string. Examples: ! plperl.on_init = 'require "plperlinit.pl"' plperl.on_init = 'use lib "/my/app"; use MyApp::PgInit;' + Any modules loaded by plperl.on_init, either directly or + indirectly, will be available for use by plperl. This may + create a security risk. To see what modules have been loaded you can use: + + DO 'elog(WARNING, join ", ", sort keys %INC)' language plperl; + + + Initialization will happen in the postmaster if the plperl library is included in shared_preload_libraries (see ), in which case extra consideration should be given to the risk of destabilizing the postmaster.