pgsql-server/ oc/src/sgml/runtime.sgml rc/back ...

From: momjian(at)postgresql(dot)org (Bruce Momjian - CVS)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql-server/ oc/src/sgml/runtime.sgml rc/back ...
Date: 2003-03-20 04:51:45
Message-ID: 20030320045145.0CC66475C3D@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: momjian(at)postgresql(dot)org 03/03/19 23:51:44

Modified files:
doc/src/sgml : runtime.sgml
src/backend/postmaster: postmaster.c
src/backend/utils/init: miscinit.c
src/backend/utils/misc: guc.c postgresql.conf.sample
src/include : miscadmin.h

Log message:
> I can see a couple possible downsides: (a) the library might have some
> weird behavior across fork boundaries; (b) the additional memory space
> that has to be duplicated into child processes will cost something per
> child launch, even if the child never uses it. But these are only
> arguments that it might not *always* be a prudent thing to do, not that
> we shouldn't give the DBA the tool to do it if he wants. So fire away.

Here is a patch for the above, including a documentation update. It
creates a new GUC variable "preload_libraries", that accepts a list in
the form:

preload_libraries = '$libdir/mylib1:initfunc,$libdir/mylib2'

If ":initfunc" is omitted or not found, no initialization function is
executed, but the library is still preloaded. If "$libdir/mylib" isn't
found, the postmaster refuses to start.

In my testing with PL/R, it reduces the first call to a PL/R function
(after connecting) from almost 2 seconds, down to about 8 ms.

Joe Conway

Browse pgsql-committers by date

  From Date Subject
Next Message Bruce Momjian - CVS 2003-03-20 04:52:35 pgsql-server/src/test/regress regress.c
Previous Message Bruce Momjian - CVS 2003-03-20 04:49:18 pgsql-server/src/bin/psql common.c