summaryrefslogtreecommitdiff
path: root/src/backend/optimizer/plan/planagg.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-04-12 04:26:34 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-04-12 04:26:34 +0000
commit2e7a68896bfa84b28cd57e23e141aa9c899275c7 (patch)
tree11d360de8f7aab0d5c3345a45e61169c40f83538 /src/backend/optimizer/plan/planagg.c
parent3803f243790466722cb6cd26118f48629261cb58 (diff)
Add aggsortop column to pg_aggregate, so that MIN/MAX optimization can
be supported for all datatypes. Add CREATE AGGREGATE and pg_dump support too. Add specialized min/max aggregates for bpchar, instead of depending on text's min/max, because otherwise the possible use of bpchar indexes cannot be recognized. initdb forced because of catalog changes.
Diffstat (limited to 'src/backend/optimizer/plan/planagg.c')
-rw-r--r--src/backend/optimizer/plan/planagg.c17
1 files changed, 1 insertions, 16 deletions
diff --git a/src/backend/optimizer/plan/planagg.c b/src/backend/optimizer/plan/planagg.c
index 299931c6156..b80f2c6900b 100644
--- a/src/backend/optimizer/plan/planagg.c
+++ b/src/backend/optimizer/plan/planagg.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/optimizer/plan/planagg.c,v 1.1 2005/04/11 23:06:55 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/optimizer/plan/planagg.c,v 1.2 2005/04/12 04:26:24 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -542,7 +542,6 @@ replace_aggs_with_params_mutator(Node *node, List **context)
static Oid
fetch_agg_sort_op(Oid aggfnoid)
{
-#ifdef NOT_YET
HeapTuple aggTuple;
Form_pg_aggregate aggform;
Oid aggsortop;
@@ -558,18 +557,4 @@ fetch_agg_sort_op(Oid aggfnoid)
ReleaseSysCache(aggTuple);
return aggsortop;
-#else
- /*
- * XXX stub implementation for testing: hardwire a few cases.
- */
- if (aggfnoid == 2132) /* min(int4) -> int4lt */
- return 97;
- if (aggfnoid == 2116) /* max(int4) -> int4gt */
- return 521;
- if (aggfnoid == 2145) /* min(text) -> text_lt */
- return 664;
- if (aggfnoid == 2129) /* max(text) -> text_gt */
- return 666;
- return InvalidOid;
-#endif
}