postgresql/src/backend/utils
Tom Lane b1752c3a7e Fix typcache's failure to treat ranges as container types.
Like the similar logic for arrays and records, it's necessary to examine
the range's subtype to decide whether the range type can support hashing.
We can omit checking the subtype for btree-defined operations, though,
since range subtypes are required to have those operations.  (Possibly
that simplification for btree cases led us to overlook that it does
not apply for hash cases.)

This is only an issue if the subtype lacks hash support, which is not
true of any built-in range type, but it's easy to demonstrate a problem
with a range type over, eg, money: you can get a "could not identify
a hash function" failure when the planner is misled into thinking that
hash join or aggregation would work.

This was born broken, so back-patch to all supported branches.
2017-10-20 17:12:27 -04:00
..
adt Doc: fix missing explanation of default object privileges. 2017-10-11 16:56:40 -04:00
cache Fix typcache's failure to treat ranges as container types. 2017-10-20 17:12:27 -04:00
error Fix new warnings from GCC 7 2017-05-16 08:52:39 -04:00
fmgr Fix typos in comments. 2017-02-06 11:34:15 +02:00
hash Remove broken and useless entry-count printing in HASH_DEBUG code. 2017-08-02 12:16:57 -04:00
init Unify SIGHUP handling between normal and walsender backends. 2017-06-05 19:18:16 -07:00
mb Add KOI8-U map files to Makefile. 2017-02-02 14:13:47 +02:00
misc Add missing comment in postgresql.conf. 2017-07-31 11:27:58 +09:00
mmgr Handle elog(FATAL) during ROLLBACK more robustly. 2017-08-14 15:43:20 -04:00
resowner pgindent run for 9.6 2016-06-09 18:02:36 -04:00
sort Avoid integer overflow while sifting-up a heap in tuplesort.c. 2017-07-12 13:24:16 -04:00
time Fix low-probability loss of NOTIFY messages due to XID wraparound. 2017-10-11 14:28:33 -04:00
.gitignore Avoid maintaining three separate copies of the error codes list. 2011-02-03 22:32:49 -05:00
errcodes.txt Add the "snapshot too old" feature 2016-04-08 14:36:30 -05:00
Gen_dummy_probes.pl Finish pgindent run for 9.6: Perl files. 2016-06-12 04:19:56 -04:00
Gen_dummy_probes.sed Update copyright for 2016 2016-01-02 13:33:40 -05:00
Gen_fmgrtab.pl Update copyright for 2016 2016-01-02 13:33:40 -05:00
generate-errcodes.pl Update copyright for 2016 2016-01-02 13:33:40 -05:00
Makefile Make handling of errcodes.h more consistent with other generated headers. 2011-02-04 09:29:10 -05:00
probes.d Update copyright for 2016 2016-01-02 13:33:40 -05:00