diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2002-11-29 21:39:12 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2002-11-29 21:39:12 +0000 |
commit | f68f11928d5c791873073c882775dae10283ff49 (patch) | |
tree | 628e4491fe33cdafb0e205d73e29b154ef68f94b /src/backend/executor/nodeGroup.c | |
parent | 851a4c48fd468b15ef988d5d2c79a44246dd478d (diff) | |
download | postgresql-f68f11928d5c791873073c882775dae10283ff49.tar.gz postgresql-f68f11928d5c791873073c882775dae10283ff49.zip |
Tighten selection of equality and ordering operators for grouping
operations: make sure we use operators that are compatible, as determined
by a mergejoin link in pg_operator. Also, add code to planner to ensure
we don't try to use hashed grouping when the grouping operators aren't
marked hashable.
Diffstat (limited to 'src/backend/executor/nodeGroup.c')
-rw-r--r-- | src/backend/executor/nodeGroup.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/backend/executor/nodeGroup.c b/src/backend/executor/nodeGroup.c index 3ea0e44d286..d41bcbb6fcc 100644 --- a/src/backend/executor/nodeGroup.c +++ b/src/backend/executor/nodeGroup.c @@ -15,7 +15,7 @@ * locate group boundaries. * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/executor/nodeGroup.c,v 1.49 2002/11/06 22:31:23 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/executor/nodeGroup.c,v 1.50 2002/11/29 21:39:11 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -353,11 +353,7 @@ execTuplesMatchPrepare(TupleDesc tupdesc, Oid typid = tupdesc->attrs[att - 1]->atttypid; Oid eq_function; - eq_function = compatible_oper_funcid(makeList1(makeString("=")), - typid, typid, true); - if (!OidIsValid(eq_function)) - elog(ERROR, "Unable to identify an equality operator for type %s", - format_type_be(typid)); + eq_function = equality_oper_funcid(typid); fmgr_info(eq_function, &eqfunctions[i]); } |