]> granicus.if.org Git - postgresql/commit
Fix "element <@ range" cost estimation.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Thu, 21 Mar 2013 09:15:45 +0000 (11:15 +0200)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Thu, 21 Mar 2013 09:21:51 +0000 (11:21 +0200)
commitf897c4744fea221dfc7bbd277081edad41d1d58d
tree75da93ace14f37af7ee4819efcd1db9ff9ff7427
parentf8348ea32ec8d713cd6e5d5e16f15edef22c4d03
Fix "element <@ range" cost estimation.

The statistics-based cost estimation patch for range types broke that, by
incorrectly assuming that the left operand of all range oeprators is a
range. That lead to a "type x is not a range type" error. Because it took so
long for anyone to notice, add a regression test for that case.

We still don't do proper statistics-based cost estimation for that, so you
just get a default constant estimate. We should look into implementing that,
but this patch at least fixes the regression.

Spotted by Tom Lane, when testing query from Josh Berkus.
src/backend/utils/adt/rangetypes_selfuncs.c
src/test/regress/expected/rangetypes.out
src/test/regress/sql/rangetypes.sql