• Tom Lane's avatar
    Disable cache clobber to avoid breaking postgres_fdw termination test. · 1273a15b
    Tom Lane authored
    Commit 93f41461 improved a pre-existing test case so that it would
    show whether or not termination of the "remote" worker process happened.
    This soon exposed that, when debug_invalidate_system_caches_always
    (nee CLOBBER_CACHE_ALWAYS) is enabled, no such termination occurs.
    That's because cache invalidation forces postgres_fdw connections
    to be dropped at end of transaction, so that there's no worker to
    terminate.  There's a race condition as to whether the worker will
    manage to get out of the BackendStatusArray before we look, but at
    least on buildfarm member hyrax, it's failed twice in two attempts.
    
    Rather than re-lobotomizing the test, let's fix this by transiently
    disabling debug_invalidate_system_caches_always.  (Hooray for that
    being just a GUC nowadays, rather than a compile-time option.)
    If this proves not to be enough to make the test stable, we can
    do the other thing instead.
    
    Discussion: https://postgr.es/m/3854538.1620081771@sss.pgh.pa.us
    1273a15b
postgres_fdw.sql 134 KB