Hash support for row types
Peter Eisentraut <peter@eisentraut.org>
Hash support for row types Add hash functions for the record type as well as a hash operator family and operator class for the record type. This enables all the hash functionality for the record type such as hash-based plans for UNION/INTERSECT/EXCEPT DISTINCT, recursive queries using UNION DISTINCT, hash joins, and hash partitioning. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/flat/38eccd35-4e2d-6767-1b3c-dada1eac3124%402ndquadrant.com
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/queries.sgml | modified | +0 −9 |
| src/backend/utils/adt/rowtypes.c | modified | +249 −0 |
| src/backend/utils/cache/lsyscache.c | modified | +6 −1 |
| src/backend/utils/cache/typcache.c | modified | +55 −23 |
| src/include/catalog/catversion.h | modified | +1 −1 |
| src/include/catalog/pg_amop.dat | modified | +5 −0 |
| src/include/catalog/pg_amproc.dat | modified | +4 −0 |
| src/include/catalog/pg_opclass.dat | modified | +2 −0 |
| src/include/catalog/pg_operator.dat | modified | +1 −1 |
| src/include/catalog/pg_opfamily.dat | modified | +2 −0 |
| src/include/catalog/pg_proc.dat | modified | +7 −0 |
| src/test/regress/expected/hash_func.out | modified | +21 −0 |
| src/test/regress/expected/join.out | modified | +1 −0 |
| src/test/regress/expected/union.out | modified | +48 −35 |
| src/test/regress/expected/with.out | modified | +30 −3 |
| src/test/regress/sql/hash_func.sql | modified | +17 −0 |
| src/test/regress/sql/join.sql | modified | +1 −0 |
| src/test/regress/sql/union.sql | modified | +11 −1 |
| src/test/regress/sql/with.sql | modified | +1 −1 |
Documentation touched
Discussion
- Hash support for row types 10 messages · 2020-10-19 → 2020-11-19