• R
    Introduce group locking to prevent parallel processes from deadlocking. · a1c1af2a
    Robert Haas 提交于
    For locking purposes, we now regard heavyweight locks as mutually
    non-conflicting between cooperating parallel processes.  There are some
    possible pitfalls to this approach that are not to be taken lightly,
    but it works OK for now and can be changed later if we find a better
    approach.  Without this, it's very easy for parallel queries to
    silently self-deadlock if the user backend holds strong relation locks.
    
    Robert Haas, with help from Amit Kapila.  Thanks to Noah Misch and
    Andres Freund for extensive discussion of possible issues with this
    approach.
    a1c1af2a
lock.c 123.9 KB