diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-10-09 16:35:25 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-10-09 16:35:25 +0000 |
commit | 3e5ed167d42814b5d606f01e02c3b3967328350a (patch) | |
tree | d3dfa23d3222e9f06978d722bfee946a6c50ebac /src/backend/access/gist/gistget.c | |
parent | 1abe8ea3a6f8e36919d1f63f7d4a083204a75bf8 (diff) | |
download | postgresql-3e5ed167d42814b5d606f01e02c3b3967328350a.tar.gz postgresql-3e5ed167d42814b5d606f01e02c3b3967328350a.zip |
Fix overly tense optimization of PLpgSQL_func_hashkey: we must represent
the isTrigger state explicitly, not rely on nonzero-ness of trigrelOid
to indicate trigger-hood, because trigrelOid will be left zero when compiling
for validation. The (useless) function hash entry built by the validator
was able to match an ordinary non-trigger call later in the same session,
thereby bypassing the check that is supposed to prevent such a call.
Per report from Alvaro.
It might be worth suppressing the useless hash entry altogether, but
that's a bigger change than I want to consider back-patching.
Back-patch to 8.0. 7.4 doesn't have the problem because it doesn't
have validation mode.
Diffstat (limited to 'src/backend/access/gist/gistget.c')
0 files changed, 0 insertions, 0 deletions