diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2003-06-22 22:04:55 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2003-06-22 22:04:55 +0000 |
| commit | bff0422b6c8f65b2f8210d8690a7f63f8d6e2782 (patch) | |
| tree | a3ec649b7c6251efdae2be1b923462979ad7184e /src/include/utils/lsyscache.h | |
| parent | 0dda75f6eb4bb9d65a7c2ad729fbf21d616c1bb1 (diff) | |
| download | postgresql-bff0422b6c8f65b2f8210d8690a7f63f8d6e2782.tar.gz | |
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.
Diffstat (limited to 'src/include/utils/lsyscache.h')
| -rw-r--r-- | src/include/utils/lsyscache.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/include/utils/lsyscache.h b/src/include/utils/lsyscache.h index 66b497a98b..878f5445c2 100644 --- a/src/include/utils/lsyscache.h +++ b/src/include/utils/lsyscache.h @@ -6,7 +6,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: lsyscache.h,v 1.70 2003/05/26 00:11:28 tgl Exp $ + * $Id: lsyscache.h,v 1.71 2003/06/22 22:04:55 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -18,6 +18,7 @@ extern bool op_in_opclass(Oid opno, Oid opclass); extern bool op_requires_recheck(Oid opno, Oid opclass); extern Oid get_opclass_member(Oid opclass, int16 strategy); +extern Oid get_op_hash_function(Oid opno); extern char *get_attname(Oid relid, AttrNumber attnum); extern AttrNumber get_attnum(Oid relid, const char *attname); extern Oid get_atttype(Oid relid, AttrNumber attnum); @@ -25,6 +26,7 @@ extern int32 get_atttypmod(Oid relid, AttrNumber attnum); extern void get_atttypetypmod(Oid relid, AttrNumber attnum, Oid *typid, int32 *typmod); extern bool opclass_is_btree(Oid opclass); +extern bool opclass_is_hash(Oid opclass); extern RegProcedure get_opcode(Oid opno); extern char *get_opname(Oid opno); extern bool op_mergejoinable(Oid opno, Oid *leftOp, Oid *rightOp); |
