• Tom Lane's avatar
    Support testing of cases where table schemas change after planning. · 6f0b632f
    Tom Lane authored
    We have various cases where we allow DDL on tables to be performed with
    less than full AccessExclusiveLock.  This requires concurrent queries
    to be able to cope with the DDL change mid-flight, but up to now we had
    no repeatable way to test such cases.  To improve that, invent a test
    module that allows halting a backend after planning and then resuming
    execution once we've done desired actions in another session.  (The same
    approach could be used to inject delays in other places, if there's a
    suitable hook available.)
    
    This commit includes a single test case, which is meant to exercise the
    previously-untestable ExecCreatePartitionPruneState code repaired by
    commit 7a980dfc.  We'd probably not bother with this if that were the
    only foreseen benefit, but I expect additional test cases will use this
    infrastructure in the future.
    
    Test module by Andy Fan, partition-addition test case by me.
    
    Discussion: https://postgr.es/m/20200802181131.GA27754@telsasoft.com
    6f0b632f
partition-addition.out 648 Bytes