• Amit Kapila's avatar
    Don't shut down Gather[Merge] early under Limit. · 080313f8
    Amit Kapila authored
    Revert part of commit 19df1702f5.
    
    Early shutdown was added by that commit so that we could collect
    statistics from workers, but unfortunately, it interacted badly with
    rescans.  The problem is that we ended up destroying the parallel context
    which is required for rescans.  This leads to rescans of a Limit node over
    a Gather node to produce unpredictable results as it tries to access
    destroyed parallel context.  By reverting the early shutdown code, we
    might lose statistics in some cases of Limit over Gather [Merge], but that
    will require further study to fix.
    
    Reported-by: Jerry Sievers
    Diagnosed-by: Thomas Munro
    Author: Amit Kapila, testcase by Vignesh C
    Backpatch-through: 9.6
    Discussion: https://postgr.es/m/87ims2amh6.fsf@jsievers.enova.com
    080313f8
select_parallel.out 35.7 KB