postgresql/contrib/btree_gist
Tom Lane 94f565dcf1 Fix erroneous range-union logic for varlena types in contrib/btree_gist.
gbt_var_bin_union() failed to do the right thing when the existing range
needed to be widened at both ends rather than just one end.  This could
result in an invalid index in which keys that are present would not be
found by searches, because the searches would not think they need to
descend to the relevant leaf pages.  This error affected all the varlena
datatypes supported by btree_gist (text, bytea, bit, numeric).

Per investigation of a trouble report from Tomas Vondra.  (There is also
an issue in gbt_var_penalty(), but that should only result in inefficiency
not wrong answers.  I'm committing this separately so that we have a git
state in which it can be tested that bad penalty results don't produce
invalid indexes.)  Back-patch to all supported branches.
2013-02-07 18:22:19 -05:00
..
data
expected Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
sql Add KNNGIST support to contrib/btree_gist. 2011-03-02 14:44:33 -05:00
.gitignore Support "make check" in contrib 2011-04-25 22:27:11 +03:00
btree_bit.c Add postgres.h to *.c files for pg_upgrade, ltree, and btree_gist, and 2011-08-26 21:16:24 -04:00
btree_bytea.c Add postgres.h to *.c files for pg_upgrade, ltree, and btree_gist, and 2011-08-26 21:16:24 -04:00
btree_cash.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_date.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_float4.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_float8.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_gist--1.0.sql Throw a useful error message if an extension script file is fed to psql. 2011-10-12 15:45:03 -04:00
btree_gist--unpackaged--1.0.sql Throw a useful error message if an extension script file is fed to psql. 2011-10-12 15:45:03 -04:00
btree_gist.c Add postgres.h to *.c files for pg_upgrade, ltree, and btree_gist, and 2011-08-26 21:16:24 -04:00
btree_gist.control Convert contrib modules to use the extension facility. 2011-02-13 22:54:49 -05:00
btree_gist.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
btree_inet.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_int2.c Replace int2/int4 in C code with int16/int32 2012-06-25 01:51:46 +03:00
btree_int4.c Replace int2/int4 in C code with int16/int32 2012-06-25 01:51:46 +03:00
btree_int8.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_interval.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_macaddr.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_numeric.c Add postgres.h to *.c files for pg_upgrade, ltree, and btree_gist, and 2011-08-26 21:16:24 -04:00
btree_oid.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_text.c Add postgres.h to *.c files for pg_upgrade, ltree, and btree_gist, and 2011-08-26 21:16:24 -04:00
btree_time.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_ts.c Remove many -Wcast-qual warnings 2011-09-11 21:54:32 +03:00
btree_utils_num.c Move Timestamp/Interval typedefs and basic macros into datatype/timestamp.h. 2011-09-09 13:23:41 -04:00
btree_utils_num.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
btree_utils_var.c Fix erroneous range-union logic for varlena types in contrib/btree_gist. 2013-02-07 18:22:19 -05:00
btree_utils_var.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
Makefile Add -lm to SHLIB_LINK for contrib/btree_gist. 2011-03-03 01:43:38 -05:00