• Tom Lane's avatar
    Add server support for "plugin" libraries that can be used for add-on tasks · abc3120e
    Tom Lane authored
    such as debugging and performance measurement.  This consists of two features:
    a table of "rendezvous variables" that allows separately-loaded shared
    libraries to communicate, and a new GUC setting "local_preload_libraries"
    that allows libraries to be loaded into specific sessions without explicit
    cooperation from the client application.  To make local_preload_libraries
    as flexible as possible, we do not restrict its use to superusers; instead,
    it is restricted to load only libraries stored in $libdir/plugins/.  The
    existing LOAD command has also been modified to allow non-superusers to
    LOAD libraries stored in this directory.
    
    This patch also renames the existing GUC variable preload_libraries to
    shared_preload_libraries (after a suggestion by Simon Riggs) and does some
    code refactoring in dfmgr.c to improve clarity.
    
    Korry Douglas, with a little help from Tom Lane.
    abc3120e
dfmgr.c 16 KB