• Tom Lane's avatar
    Fix bogus variable-mangling in security_barrier_replace_vars(). · 3f6f9260
    Tom Lane authored
    This function created new Vars with varno different from varnoold, which
    is a condition that should never prevail before setrefs.c does the final
    variable-renumbering pass.  The created Vars could not be seen as equal()
    to normal Vars, which among other things broke equivalence-class processing
    for them.  The consequences of this were indeed visible in the regression
    tests, in the form of failure to propagate constants as one would expect.
    I stumbled across it while poking at bug #11457 --- after intentionally
    disabling join equivalence processing, the security-barrier regression
    tests started falling over with fun errors like "could not find pathkey
    item to sort", because of failure to match the corrupted Vars to normal
    ones.
    3f6f9260
prepsecurity.c 13.7 KB