diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2000-12-12 23:33:34 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2000-12-12 23:33:34 +0000 |
commit | 17b843d67718a716c1abb4afd2abf8a5edba9f32 (patch) | |
tree | a6ed16c25800f101e8c3d2b246460dc45a3ae5dd /src/backend/nodes/copyfuncs.c | |
parent | 77c443f8cd24ed439538db699de04c44474d9f33 (diff) |
Cache eval cost of qualification expressions in RestrictInfo nodes to
avoid repeated evaluations in cost_qual_eval(). This turns out to save
a useful fraction of planning time. No change to external representation
of RestrictInfo --- although that node type doesn't appear in stored
rules anyway.
Diffstat (limited to 'src/backend/nodes/copyfuncs.c')
-rw-r--r-- | src/backend/nodes/copyfuncs.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c index 1e03e044182..3e4a6d91dd1 100644 --- a/src/backend/nodes/copyfuncs.c +++ b/src/backend/nodes/copyfuncs.c @@ -15,7 +15,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.133 2000/11/24 20:16:39 petere Exp $ + * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.134 2000/12/12 23:33:32 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1418,6 +1418,7 @@ _copyRestrictInfo(RestrictInfo *from) * ---------------- */ Node_Copy(from, newnode, clause); + newnode->eval_cost = from->eval_cost; newnode->ispusheddown = from->ispusheddown; Node_Copy(from, newnode, subclauseindices); newnode->mergejoinoperator = from->mergejoinoperator; |