• Tom Lane's avatar
    Avoid trying to lock OLD/NEW in a rule with FOR UPDATE. · 46490039
    Tom Lane authored
    transformLockingClause neglected to exclude the pseudo-RTEs for
    OLD/NEW when processing a rule's query.  This led to odd errors
    or even crashes later on.  This bug is very ancient, but it's
    not terribly surprising that nobody noticed, since the use-case
    for SELECT FOR UPDATE in a non-view rule is somewhere between
    thin and non-existent.  Still, crashing is not OK.
    
    Per bug #17151 from Zhiyong Wu.  Thanks to Masahiko Sawada
    for analysis of the problem.
    
    Discussion: https://postgr.es/m/17151-c03a3e6e4ec9aadb@postgresql.org
    46490039
rules.sql 39.9 KB