• Andres Freund's avatar
    Unify SIGHUP handling between normal and walsender backends. · 6e1dd277
    Andres Freund authored
    Because walsender and normal backends share the same main loop it's
    problematic to have two different flag variables, set in signal
    handlers, indicating a pending configuration reload.  Only certain
    walsender commands reach code paths checking for the
    variable (START_[LOGICAL_]REPLICATION, CREATE_REPLICATION_SLOT
    ... LOGICAL, notably not base backups).
    
    This is a bug present since the introduction of walsender, but has
    gotten worse in releases since then which allow walsender to do more.
    
    A later patch, not slated for v10, will similarly unify SIGHUP
    handling in other types of processes as well.
    
    Author: Petr Jelinek, Andres Freund
    Reviewed-By: Michael Paquier
    Discussion: https://postgr.es/m/20170423235941.qosiuoyqprq4nu7v@alap3.anarazel.de
    Backpatch: 9.2-, bug is present since 9.0
    6e1dd277
globals.c 4.16 KB