diff options
author | Tomas Vondra <tomas.vondra@postgresql.org> | 2019-07-13 00:12:16 +0200 |
---|---|---|
committer | Tomas Vondra <tomas.vondra@postgresql.org> | 2019-07-18 11:30:12 +0200 |
commit | 42276976a1437c88fb6176fc1a876fd79a139eb0 (patch) | |
tree | 6d9a7f134784361070c3b2900915aef8ddf4c779 /src/include/utils/builtins.h | |
parent | 3944e855bc5bee32d99a9ba2245a026d4bafe282 (diff) | |
download | postgresql-42276976a1437c88fb6176fc1a876fd79a139eb0.tar.gz postgresql-42276976a1437c88fb6176fc1a876fd79a139eb0.zip |
Fix handling of opclauses in extended statistics
We expect opclauses to have exactly one Var and one Const, but the code
was checking the Const by calling is_pseudo_constant_clause() which is
incorrect - we need a proper constant.
Fixed by using plain IsA(x,Const) to check type of the node. We need to
do these checks in two places, so move it into a separate function that
can be called in both places.
Reported by Andreas Seltenreich, based on crash reported by sqlsmith.
Backpatch to v12, where this code was introduced.
Discussion: https://postgr.es/m/8736jdhbhc.fsf%40ansel.ydns.eu
Backpatch-to: 12
Diffstat (limited to 'src/include/utils/builtins.h')
0 files changed, 0 insertions, 0 deletions