• Robert Haas's avatar
    Allow notifications to bgworkers without database connections. · 8a02b3d7
    Robert Haas authored
    Previously, if one background worker registered another background
    worker and set bgw_notify_pid while for the second background worker,
    it would not receive notifications from the postmaster unless, at the
    time the "parent" was registered, BGWORKER_BACKEND_DATABASE_CONNECTION
    was set.
    
    To fix, instead instead of including only those background workers that
    requested database connections in the postmater's BackendList, include
    them all.  There doesn't seem to be any reason not do this, and indeed
    it removes a significant amount of duplicated code.  The other option
    is to make PostmasterMarkPIDForWorkerNotify look at BackgroundWorkerList
    in addition to BackendList, but that adds more code duplication instead
    of getting rid of it.
    
    Patch by me.  Review and testing by Ashutosh Bapat.
    8a02b3d7
postmaster.c 168 KB