• Michael Paquier's avatar
    Disable timeouts when running pg_rewind with online source cluster · be182e4f
    Michael Paquier authored
    In this case, the transfer uses a libpq connection, which is subject to
    the timeout parameters set at system level, and this can make the rewind
    operation suddenly canceled which is not good for automation.  One
    workaround to such issues would be to use PGOPTIONS to enforce the
    wanted timeout parameters, but that's annoying, and for example pg_dump,
    which can run potentially long-running queries disables all types of
    timeouts.
    
    lock_timeout and statement_timeout are the ones which can cause problems
    now.  Note that pg_rewind does not use transactions, so disabling
    idle_in_transaction_session_timeout is optional, but it feels safer to
    do so for the future.
    
    This is back-patched down to 9.5.  idle_in_transaction_session_timeout
    is only present since 9.6.
    
    Author: Alexander Kukushkin
    Discussion: https://postgr.es/m/CAFh8B=krcVXksxiwVQh1SoY+ziJ-JC=6FcuoBL3yce_40Es5_g@mail.gmail.com
    Backpatch-through: 9.5
    be182e4f
libpq_fetch.c 13.9 KB