aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/execMain.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2002-11-11 03:02:20 +0000
committerBruce Momjian <bruce@momjian.us>2002-11-11 03:02:20 +0000
commit75fee4535d1a9741474b53bd46a3585ad3c66eb5 (patch)
treede4500a8b76fdb882f055ad7bd8889be9d51c790 /src/backend/executor/execMain.c
parent5d283d89cb6142d721c095c28be19056ad620616 (diff)
downloadpostgresql-75fee4535d1a9741474b53bd46a3585ad3c66eb5.tar.gz
postgresql-75fee4535d1a9741474b53bd46a3585ad3c66eb5.zip
Back out use of palloc0 in place if palloc/MemSet. Seems constant len
to MemSet is a performance boost.
Diffstat (limited to 'src/backend/executor/execMain.c')
-rw-r--r--src/backend/executor/execMain.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c
index f6edc3283a1..d85e59fb009 100644
--- a/src/backend/executor/execMain.c
+++ b/src/backend/executor/execMain.c
@@ -27,7 +27,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/executor/execMain.c,v 1.182 2002/11/10 07:25:13 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/executor/execMain.c,v 1.183 2002/11/11 03:02:18 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -106,8 +106,12 @@ ExecutorStart(QueryDesc *queryDesc, EState *estate)
Assert(queryDesc != NULL);
if (queryDesc->plantree->nParamExec > 0)
+ {
estate->es_param_exec_vals = (ParamExecData *)
- palloc0(queryDesc->plantree->nParamExec * sizeof(ParamExecData));
+ palloc(queryDesc->plantree->nParamExec * sizeof(ParamExecData));
+ MemSet(estate->es_param_exec_vals, 0,
+ queryDesc->plantree->nParamExec * sizeof(ParamExecData));
+ }
/*
* Make our own private copy of the current query snapshot data.
@@ -1788,12 +1792,17 @@ EvalPlanQual(EState *estate, Index rti, ItemPointer tid)
*/
epqstate->es_evTupleNull = (bool *) palloc(rtsize * sizeof(bool));
if (epq == NULL)
+ {
/* first PQ stack entry */
epqstate->es_evTuple = (HeapTuple *)
- palloc0(rtsize * sizeof(HeapTuple));
+ palloc(rtsize * sizeof(HeapTuple));
+ memset(epqstate->es_evTuple, 0, rtsize * sizeof(HeapTuple));
+ }
else
+ {
/* later stack entries share the same storage */
epqstate->es_evTuple = epq->estate.es_evTuple;
+ }
}
else
{