diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2000-08-08 15:43:12 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2000-08-08 15:43:12 +0000 |
| commit | 62e29fe2e748933bfd8ab1429518ee7b5a8974a7 (patch) | |
| tree | d9ca32ad908a811854e890c059b46b8ff13fa038 /src/backend/optimizer/path | |
| parent | 8fc32374beb542380857e2fc0d67df91ad123b1d (diff) | |
| download | postgresql-62e29fe2e748933bfd8ab1429518ee7b5a8974a7.tar.gz | |
Remove 'func_tlist' from Func expression nodes, likewise 'param_tlist'
from Param nodes, per discussion a few days ago on pghackers. Add new
expression node type FieldSelect that implements the functionality where
it's actually needed. Clean up some other unused fields in Func nodes
as well.
NOTE: initdb forced due to change in stored expression trees for rules.
Diffstat (limited to 'src/backend/optimizer/path')
| -rw-r--r-- | src/backend/optimizer/path/indxpath.c | 12 | ||||
| -rw-r--r-- | src/backend/optimizer/path/pathkeys.c | 7 |
2 files changed, 6 insertions, 13 deletions
diff --git a/src/backend/optimizer/path/indxpath.c b/src/backend/optimizer/path/indxpath.c index 44305558ab..13bf65e699 100644 --- a/src/backend/optimizer/path/indxpath.c +++ b/src/backend/optimizer/path/indxpath.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.91 2000/08/03 16:34:12 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.92 2000/08/08 15:41:30 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1339,9 +1339,7 @@ clause_pred_clause_test(Expr *predicate, Node *clause) */ test_oper = makeOper(test_op, /* opno */ InvalidOid, /* opid */ - BOOLOID, /* opresulttype */ - 0, /* opsize */ - NULL); /* op_fcache */ + BOOLOID); /* opresulttype */ replace_opid(test_oper); test_expr = make_opclause(test_oper, @@ -1934,7 +1932,7 @@ prefix_quals(Var *leftop, Oid expr_op, if (oproid == InvalidOid) elog(ERROR, "prefix_quals: no = operator for type %u", datatype); con = string_to_const(prefix, datatype); - op = makeOper(oproid, InvalidOid, BOOLOID, 0, NULL); + op = makeOper(oproid, InvalidOid, BOOLOID); expr = make_opclause(op, leftop, (Var *) con); result = lcons(expr, NIL); return result; @@ -1949,7 +1947,7 @@ prefix_quals(Var *leftop, Oid expr_op, if (oproid == InvalidOid) elog(ERROR, "prefix_quals: no >= operator for type %u", datatype); con = string_to_const(prefix, datatype); - op = makeOper(oproid, InvalidOid, BOOLOID, 0, NULL); + op = makeOper(oproid, InvalidOid, BOOLOID); expr = make_opclause(op, leftop, (Var *) con); result = lcons(expr, NIL); @@ -1964,7 +1962,7 @@ prefix_quals(Var *leftop, Oid expr_op, if (oproid == InvalidOid) elog(ERROR, "prefix_quals: no < operator for type %u", datatype); con = string_to_const(greaterstr, datatype); - op = makeOper(oproid, InvalidOid, BOOLOID, 0, NULL); + op = makeOper(oproid, InvalidOid, BOOLOID); expr = make_opclause(op, leftop, (Var *) con); result = lappend(result, expr); pfree(greaterstr); diff --git a/src/backend/optimizer/path/pathkeys.c b/src/backend/optimizer/path/pathkeys.c index e9906bfef2..6d7b67bee3 100644 --- a/src/backend/optimizer/path/pathkeys.c +++ b/src/backend/optimizer/path/pathkeys.c @@ -11,7 +11,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/path/pathkeys.c,v 1.23 2000/07/24 03:10:56 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/path/pathkeys.c,v 1.24 2000/08/08 15:41:31 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -436,12 +436,7 @@ build_index_pathkeys(Query *root, funcnode->funcid = index->indproc; funcnode->functype = get_func_rettype(index->indproc); - funcnode->funcisindex = false; - funcnode->funcsize = 0; funcnode->func_fcache = NULL; - /* we assume here that the function returns a base type... */ - funcnode->func_tlist = setup_base_tlist(funcnode->functype); - funcnode->func_planlist = NIL; while (*indexkeys != 0) { |
