From a635c08fa10fe545d723bcec6eb73bfdca07e2c0 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 30 Jan 2007 01:33:36 +0000 Subject: Add support for cross-type hashing in hash index searches and hash joins. Hashing for aggregation purposes still needs work, so it's not time to mark any cross-type operators as hashable for general use, but these cases work if the operators are so marked by hand in the system catalogs. --- src/include/utils/lsyscache.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/include/utils') diff --git a/src/include/utils/lsyscache.h b/src/include/utils/lsyscache.h index 28bb03eca6..8e9bfaa1ed 100644 --- a/src/include/utils/lsyscache.h +++ b/src/include/utils/lsyscache.h @@ -6,7 +6,7 @@ * Portions Copyright (c) 1996-2007, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/utils/lsyscache.h,v 1.115 2007/01/22 01:35:22 tgl Exp $ + * $PostgreSQL: pgsql/src/include/utils/lsyscache.h,v 1.116 2007/01/30 01:33:36 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -42,8 +42,10 @@ extern bool get_compare_function_for_ordering_op(Oid opno, extern Oid get_equality_op_for_ordering_op(Oid opno); extern Oid get_ordering_op_for_equality_op(Oid opno, bool use_lhs_type); extern List *get_mergejoin_opfamilies(Oid opno); -extern Oid get_compatible_hash_operator(Oid opno, bool use_lhs_type); -extern Oid get_op_hash_function(Oid opno); +extern bool get_compatible_hash_operators(Oid opno, + Oid *lhs_opno, Oid *rhs_opno); +extern bool get_op_hash_functions(Oid opno, + RegProcedure *lhs_procno, RegProcedure *rhs_procno); extern void get_op_btree_interpretation(Oid opno, List **opfamilies, List **opstrats); extern bool ops_in_same_btree_opfamily(Oid opno1, Oid opno2); -- cgit v1.2.1