CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: tgl@svr1.postgresql.org 03/06/22 19:04:56
Modified files:
doc/src/sgml : catalogs.sgml xfunc.sgml xoper.sgml
src/backend/access/hash: hashfunc.c
src/backend/executor: execGrouping.c nodeAgg.c nodeHash.c
nodeHashjoin.c nodeSubplan.c
src/backend/utils/adt: varchar.c
src/backend/utils/cache: catcache.c lsyscache.c
src/include/access: hash.h
src/include/catalog: catversion.h pg_am.h pg_amop.h pg_amproc.h
pg_opclass.h pg_operator.h pg_proc.h
src/include/executor: executor.h hashjoin.h nodeHash.h
src/include/nodes: execnodes.h
src/include/utils: lsyscache.h
src/test/regress/expected: opr_sanity.out
src/test/regress/sql: opr_sanity.sql
Log message:
Revise hash join and hash aggregation code to use the same datatype-
specific hash functions used by hash indexes, rather than the old
not-datatype-aware ComputeHashFunc routine. This makes it safe to do
hash joining on several datatypes that previously couldn't use hashing.
The sets of datatypes that are hash indexable and hash joinable are now
exactly the same, whereas before each had some that weren't in the other.