postgresql/src
Tom Lane eb68d71f99 Fix indexable-row-comparison logic to account for covering indexes.
indxpath.c needs a good deal more attention for covering indexes than
it's gotten.  But so far as I can tell, the only really awful breakage
is in expand_indexqual_rowcompare (nee adjust_rowcompare_for_index),
which was only half fixed in c266ed31a.  The other problems aren't
bad enough to take the risk of a just-before-wrap fix.

The problem here is that if the leading column of a row comparison
matches an index (allowing this code to be reached), and some later
column doesn't match the index, it'll nonetheless believe that that
column matches the first included index column.  Typically that'll
lead to an error like "operator M is not a member of opfamily N" as
a result of fetching a garbage opfamily OID.  But with enough bad
luck, maybe a broken plan would be generated.

Discussion: https://postgr.es/m/25526.1549847928@sss.pgh.pa.us
2019-02-10 22:51:33 -05:00
..
backend Fix indexable-row-comparison logic to account for covering indexes. 2019-02-10 22:51:33 -05:00
bin Solve cross-version-upgrade testing problem induced by 1fb57af92. 2019-02-09 21:02:06 -05:00
common Fix portability failure introduced in commits d2b0b60e7 et al. 2018-12-26 15:30:22 -05:00
fe_utils Fix translation of special characters in psql's LaTeX output modes. 2018-11-26 17:32:51 -05:00
include Allow to reset execGrouping.c style tuple hashtables. 2019-02-09 01:05:50 -08:00
interfaces Remove infinite-loop hazards in ecpg test suite. 2019-01-24 16:46:55 -05:00
makefiles Move port-specific parts of with_temp_install to port makefile. 2019-02-04 18:56:17 +00:00
pl Fix misc typos in comments. 2019-01-23 13:43:41 +02:00
port Use our own getopt() on OpenBSD. 2019-01-18 15:06:26 -05:00
template Yet further rethinking of build changes for macOS Mojave. 2018-11-02 18:54:00 -04:00
test Fix indexable-row-comparison logic to account for covering indexes. 2019-02-10 22:51:33 -05:00
timezone Update time zone data files to tzdata release 2018i. 2019-02-05 10:59:06 -05:00
tools Unify searchpath and do file logic in MSVC build scripts. 2019-02-06 07:49:07 -05:00
tutorial Update copyright for 2018 2018-01-02 23:30:12 -05:00
.gitignore
DEVELOPERS
Makefile Fix partial-build problems introduced by having more generated headers. 2018-04-09 16:42:10 -04:00
Makefile.global.in Move port-specific parts of with_temp_install to port makefile. 2019-02-04 18:56:17 +00:00
Makefile.shlib Ensure static libraries have correct mod time even if ranlib messes it up. 2018-11-29 15:53:44 -05:00
nls-global.mk