• R
    Add new GUC, max_worker_processes, limiting number of bgworkers. · 6bc8ef0b
    Robert Haas 提交于
    In 9.3, there's no particular limit on the number of bgworkers;
    instead, we just count up the number that are actually registered,
    and use that to set MaxBackends.  However, that approach causes
    problems for Hot Standby, which needs both MaxBackends and the
    size of the lock table to be the same on the standby as on the
    master, yet it may not be desirable to run the same bgworkers in
    both places.  9.3 handles that by failing to notice the problem,
    which will probably work fine in nearly all cases anyway, but is
    not theoretically sound.
    
    A further problem with simply counting the number of registered
    workers is that new workers can't be registered without a
    postmaster restart.  This is inconvenient for administrators,
    since bouncing the postmaster causes an interruption of service.
    Moreover, there are a number of applications for background
    processes where, by necessity, the background process must be
    started on the fly (e.g. parallel query).  While this patch
    doesn't actually make it possible to register new background
    workers after startup time, it's a necessary prerequisite.
    
    Patch by me.  Review by Michael Paquier.
    6bc8ef0b
config.sgml 287.1 KB