]> granicus.if.org Git - postgresql/commitdiff
Back out use of palloc0 in place if palloc/MemSet. Seems constant len
authorBruce Momjian <bruce@momjian.us>
Mon, 11 Nov 2002 03:02:20 +0000 (03:02 +0000)
committerBruce Momjian <bruce@momjian.us>
Mon, 11 Nov 2002 03:02:20 +0000 (03:02 +0000)
to MemSet is a performance boost.

38 files changed:
contrib/dblink/dblink.c
contrib/intarray/_int.c
src/backend/access/common/indextuple.c
src/backend/access/common/tupdesc.c
src/backend/access/gist/gist.c
src/backend/access/nbtree/nbtsort.c
src/backend/access/rtree/rtproc.c
src/backend/catalog/index.c
src/backend/commands/analyze.c
src/backend/commands/copy.c
src/backend/commands/explain.c
src/backend/commands/opclasscmds.c
src/backend/commands/prepare.c
src/backend/commands/trigger.c
src/backend/commands/vacuumlazy.c
src/backend/executor/execMain.c
src/backend/executor/functions.c
src/backend/executor/nodeAgg.c
src/backend/executor/nodeAppend.c
src/backend/executor/nodeSort.c
src/backend/executor/spi.c
src/backend/optimizer/path/allpaths.c
src/backend/parser/parse_func.c
src/backend/parser/parse_node.c
src/backend/postmaster/postmaster.c
src/backend/utils/adt/acl.c
src/backend/utils/adt/arrayfuncs.c
src/backend/utils/adt/geo_ops.c
src/backend/utils/adt/network.c
src/backend/utils/adt/varbit.c
src/backend/utils/cache/catcache.c
src/backend/utils/cache/relcache.c
src/backend/utils/fmgr/fmgr.c
src/backend/utils/sort/tuplesort.c
src/backend/utils/sort/tuplestore.c
src/include/c.h
src/pl/plpgsql/src/pl_exec.c
src/test/regress/regress.c

index 8cbce09d1bab619fef5eb93be0f9edc665b9a3a5..67a9d30d64e850a16b84cfc53a32fed4a5a2f4f6 100644 (file)
@@ -1442,7 +1442,8 @@ init_dblink_results(MemoryContext fn_mcxt)
 
        oldcontext = MemoryContextSwitchTo(fn_mcxt);
 
-       retval = (dblink_results *) palloc0(sizeof(dblink_results));
+       retval = (dblink_results *) palloc(sizeof(dblink_results));
+       MemSet(retval, 0, sizeof(dblink_results));
 
        retval->tup_num = -1;
        retval->res_id_index = -1;
index 325d504d849a233f2cf04f6f8aa404096ff32ba9..dc674e09ff804fd3042cbdb0fd02fc34a197502d 100644 (file)
@@ -916,8 +916,10 @@ new_intArrayType(int num)
        ArrayType  *r;
        int                     nbytes = ARR_OVERHEAD(NDIM) + sizeof(int) * num;
 
-       r = (ArrayType *) palloc0(nbytes);
+       r = (ArrayType *) palloc(nbytes);
 
+       MemSet(r, 0, nbytes);
+       
        ARR_SIZE(r) = nbytes;
        ARR_NDIM(r) = NDIM;
        ARR_ELEMTYPE(r) = INT4OID;
index e81dbf2e4eb5ac483f472a98d55d5c500c009b4a..03b4cd1440e84d29e488e848484707fff6f3dc63 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/common/indextuple.c,v 1.61 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/common/indextuple.c,v 1.62 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -121,8 +121,9 @@ index_formtuple(TupleDesc tupleDescriptor,
 #endif
        size = MAXALIGN(size);          /* be conservative */
 
-       tp = (char *) palloc0(size);
+       tp = (char *) palloc(size);
        tuple = (IndexTuple) tp;
+       MemSet(tp, 0, size);
 
        DataFill((char *) tp + hoff,
                         tupleDescriptor,
index 8ad0d87b400dee7a3ff47b69129992f15f7be739..a2e777b002cbf3558ba30432d6190a9ec4488605 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/common/tupdesc.c,v 1.92 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/common/tupdesc.c,v 1.93 2002/11/11 03:02:18 momjian Exp $
  *
  * NOTES
  *       some of the executor utility code such as "ExecTypeFromTL" should be
@@ -60,7 +60,8 @@ CreateTemplateTupleDesc(int natts, bool hasoid)
        {
                uint32          size = natts * sizeof(Form_pg_attribute);
 
-               desc->attrs = (Form_pg_attribute *) palloc0(size);
+               desc->attrs = (Form_pg_attribute *) palloc(size);
+               MemSet(desc->attrs, 0, size);
        }
        else
                desc->attrs = NULL;
index d41d6e41ab053d7eca939cd1b28756793d3c6798..6c76e025706600b77894183e5b49fabc8e60c6d2 100644 (file)
@@ -8,7 +8,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/gist/gist.c,v 1.97 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/gist/gist.c,v 1.98 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1316,8 +1316,10 @@ gistSplit(Relation r,
         */
        if (r->rd_att->natts > 1)
        {
-               v.spl_idgrp = (int *) palloc0(sizeof(int) * (*len + 1));
-               v.spl_grpflag = (char *) palloc0(sizeof(char) * (*len + 1));
+               v.spl_idgrp = (int *) palloc(sizeof(int) * (*len + 1));
+               MemSet((void *) v.spl_idgrp, 0, sizeof(int) * (*len + 1));
+               v.spl_grpflag = (char *) palloc(sizeof(char) * (*len + 1));
+               MemSet((void *) v.spl_grpflag, 0, sizeof(char) * (*len + 1));
                v.spl_ngrp = (int *) palloc(sizeof(int) * (*len + 1));
 
                MaxGrpId = gistfindgroup(giststate, (GISTENTRY *) VARDATA(entryvec), &v);
index 2fb5782bf356c5094d395db55a57fbafb30d0dda..68ed6a98298769e31e3e832806789d9d4a354a3d 100644 (file)
@@ -35,7 +35,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtsort.c,v 1.67 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtsort.c,v 1.68 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -111,7 +111,9 @@ static void _bt_load(Relation index, BTSpool *btspool, BTSpool *btspool2);
 BTSpool *
 _bt_spoolinit(Relation index, bool isunique)
 {
-       BTSpool    *btspool = (BTSpool *) palloc0(sizeof(BTSpool));
+       BTSpool    *btspool = (BTSpool *) palloc(sizeof(BTSpool));
+
+       MemSet((char *) btspool, 0, sizeof(BTSpool));
 
        btspool->index = index;
        btspool->isunique = isunique;
@@ -205,7 +207,9 @@ _bt_blnewpage(Relation index, Buffer *buf, Page *page, int flags)
 static BTPageState *
 _bt_pagestate(Relation index, int flags, int level)
 {
-       BTPageState *state = (BTPageState *) palloc0(sizeof(BTPageState));
+       BTPageState *state = (BTPageState *) palloc(sizeof(BTPageState));
+
+       MemSet((char *) state, 0, sizeof(BTPageState));
 
        /* create initial page */
        _bt_blnewpage(index, &(state->btps_buf), &(state->btps_page), flags);
index 778720b3a7176379f10800e3d0de6c861b14f13f..4e52847da80b54b7f1dd494efc27ab51f51f30d0 100644 (file)
@@ -15,7 +15,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/rtree/Attic/rtproc.c,v 1.34 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/rtree/Attic/rtproc.c,v 1.35 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -103,7 +103,9 @@ rt_poly_union(PG_FUNCTION_ARGS)
        POLYGON    *b = PG_GETARG_POLYGON_P(1);
        POLYGON    *p;
 
-       p = (POLYGON *) palloc0(sizeof(POLYGON));       /* zero any holes */
+       p = (POLYGON *) palloc(sizeof(POLYGON));
+
+       MemSet((char *) p, 0, sizeof(POLYGON));         /* zero any holes */
        p->size = sizeof(POLYGON);
        p->npts = 0;
        p->boundbox.high.x = Max(a->boundbox.high.x, b->boundbox.high.x);
@@ -125,7 +127,9 @@ rt_poly_inter(PG_FUNCTION_ARGS)
        POLYGON    *b = PG_GETARG_POLYGON_P(1);
        POLYGON    *p;
 
-       p = (POLYGON *) palloc0(sizeof(POLYGON));       /* zero any holes */
+       p = (POLYGON *) palloc(sizeof(POLYGON));
+
+       MemSet((char *) p, 0, sizeof(POLYGON));         /* zero any holes */
        p->size = sizeof(POLYGON);
        p->npts = 0;
        p->boundbox.high.x = Min(a->boundbox.high.x, b->boundbox.high.x);
index 3fe362a90aa4201f803b3c8f0fa4c0315e2d83df..45463eca380036c55108c7542c218544c8792b57 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.203 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.204 2002/11/11 03:02:18 momjian Exp $
  *
  *
  * INTERFACE ROUTINES
@@ -112,7 +112,8 @@ BuildFuncTupleDesc(Oid funcOid,
         * Allocate and zero a tuple descriptor for a one-column tuple.
         */
        funcTupDesc = CreateTemplateTupleDesc(1, false);
-       funcTupDesc->attrs[0] = (Form_pg_attribute) palloc0(ATTRIBUTE_TUPLE_SIZE);
+       funcTupDesc->attrs[0] = (Form_pg_attribute) palloc(ATTRIBUTE_TUPLE_SIZE);
+       MemSet(funcTupDesc->attrs[0], 0, ATTRIBUTE_TUPLE_SIZE);
 
        /*
         * Lookup the function to get its name and return type.
index d6f667d3d649f271fc9b0ec1c4489572f8472fd2..a6fffc7cb41f6c33e032a386a5367aa63da4c8ea 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/analyze.c,v 1.48 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/analyze.c,v 1.49 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -423,7 +423,8 @@ examine_attribute(Relation onerel, int attnum)
         * If we have "=" then we're at least able to do the minimal
         * algorithm, so start filling in a VacAttrStats struct.
         */
-       stats = (VacAttrStats *) palloc0(sizeof(VacAttrStats));
+       stats = (VacAttrStats *) palloc(sizeof(VacAttrStats));
+       MemSet(stats, 0, sizeof(VacAttrStats));
        stats->attnum = attnum;
        stats->attr = (Form_pg_attribute) palloc(ATTRIBUTE_TUPLE_SIZE);
        memcpy(stats->attr, attr, ATTRIBUTE_TUPLE_SIZE);
index 4f4625d466c97953b573d26d7349b84a4e6447a8..6143c92ec3c5b6469432c763efa6a1d288836efb 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.178 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.179 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -804,8 +804,9 @@ CopyFrom(Relation rel, List *attnumlist, bool binary, bool oids,
        elements = (Oid *) palloc(num_phys_attrs * sizeof(Oid));
        defmap = (int *) palloc(num_phys_attrs * sizeof(int));
        defexprs = (Node **) palloc(num_phys_attrs * sizeof(Node *));
-       constraintexprs = (Node **) palloc0(num_phys_attrs * sizeof(Node *));
+       constraintexprs = (Node **) palloc(num_phys_attrs * sizeof(Node *));
        constraintconsts = (Const **) palloc(num_phys_attrs * sizeof(Const *));
+       MemSet(constraintexprs, 0, num_phys_attrs * sizeof(Node *));
 
        for (i = 0; i < num_phys_attrs; i++)
        {
index 84125280da02b8cd4122453a65a3ae0ddb5a6753..e6075dd28f7d18a6c423a4ea31cbb0e3a1421eb8 100644 (file)
@@ -5,7 +5,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994-5, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.91 2002/11/10 07:25:13 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.92 2002/11/11 03:02:18 momjian Exp $
  *
  */
 
@@ -164,7 +164,8 @@ ExplainOneQuery(Query *query, ExplainStmt *stmt, TupOutputState *tstate)
                        (double) endtime.tv_usec / 1000000.0;
        }
 
-       es = (ExplainState *) palloc0(sizeof(ExplainState));
+       es = (ExplainState *) palloc(sizeof(ExplainState));
+       MemSet(es, 0, sizeof(ExplainState));
 
        es->printCost = true;           /* default */
 
index 6c61b33fcac34d3ffa12d1e52d53d712ddac314a..11e05c0b4ef2112f3e9b29f07b51f67922c691f0 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/opclasscmds.c,v 1.7 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/opclasscmds.c,v 1.8 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -124,9 +124,12 @@ DefineOpClass(CreateOpClassStmt *stmt)
         * do this mainly so that we can detect duplicate strategy numbers and
         * support-proc numbers.
         */
-       operators = (Oid *) palloc0(sizeof(Oid) * numOperators);
-       procedures = (Oid *) palloc0(sizeof(Oid) * numProcs);
-       recheck = (bool *) palloc0(sizeof(bool) * numOperators);
+       operators = (Oid *) palloc(sizeof(Oid) * numOperators);
+       MemSet(operators, 0, sizeof(Oid) * numOperators);
+       procedures = (Oid *) palloc(sizeof(Oid) * numProcs);
+       MemSet(procedures, 0, sizeof(Oid) * numProcs);
+       recheck = (bool *) palloc(sizeof(bool) * numOperators);
+       MemSet(recheck, 0, sizeof(bool) * numOperators);
 
        /*
         * Scan the "items" list to obtain additional info.
index aaf7a1bac8f0366d5f8f2d9c9084c3aa37a840aa..7ce70299ce3f63e236560b5aa096c5511055716e 100644 (file)
@@ -6,7 +6,7 @@
  * Copyright (c) 2002, PostgreSQL Global Development Group
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/prepare.c,v 1.5 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/prepare.c,v 1.6 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -116,7 +116,8 @@ ExecuteQuery(ExecuteStmt *stmt, CommandDest outputDest)
                if (nargs != length(stmt->params))
                        elog(ERROR, "ExecuteQuery: wrong number of arguments");
 
-               paramLI = (ParamListInfo) palloc0((nargs + 1) * sizeof(ParamListInfoData));
+               paramLI = (ParamListInfo) palloc((nargs + 1) * sizeof(ParamListInfoData));
+               MemSet(paramLI, 0, (nargs + 1) * sizeof(ParamListInfoData));
 
                foreach(l, stmt->params)
                {
index ef486998dde7c535b65b03f07693601c9d851be8..01bacc0447feee8c263bef69e02333f404307455 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/trigger.c,v 1.137 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/trigger.c,v 1.138 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -94,7 +94,7 @@ CreateTrigger(CreateTrigStmt *stmt, bool forConstraint)
                constrrelid = RangeVarGetRelid(stmt->constrrel, false);
        else if (stmt->isconstraint)
        {
-               /*
+               /* 
                 * If this trigger is a constraint (and a foreign key one)
                 * then we really need a constrrelid.  Since we don't have one,
                 * we'll try to generate one from the argument information.
@@ -779,7 +779,8 @@ RelationBuildTriggers(Relation relation)
                         RelationGetRelationName(relation));
 
        /* Build trigdesc */
-       trigdesc = (TriggerDesc *) palloc0(sizeof(TriggerDesc));
+       trigdesc = (TriggerDesc *) palloc(sizeof(TriggerDesc));
+       MemSet(trigdesc, 0, sizeof(TriggerDesc));
        trigdesc->triggers = triggers;
        trigdesc->numtriggers = ntrigs;
        for (found = 0; found < ntrigs; found++)
@@ -1145,8 +1146,12 @@ ExecBRInsertTriggers(EState *estate, ResultRelInfo *relinfo,
 
        /* Allocate cache space for fmgr lookup info, if not done yet */
        if (relinfo->ri_TrigFunctions == NULL)
+       {
                relinfo->ri_TrigFunctions = (FmgrInfo *)
-                       palloc0(trigdesc->numtriggers * sizeof(FmgrInfo));
+                       palloc(trigdesc->numtriggers * sizeof(FmgrInfo));
+               MemSet(relinfo->ri_TrigFunctions, 0,
+                          trigdesc->numtriggers * sizeof(FmgrInfo));
+       }
 
        LocTriggerData.type = T_TriggerData;
        LocTriggerData.tg_event = TRIGGER_EVENT_INSERT | TRIGGER_EVENT_ROW | TRIGGER_EVENT_BEFORE;
@@ -1201,8 +1206,12 @@ ExecBRDeleteTriggers(EState *estate, ResultRelInfo *relinfo,
 
        /* Allocate cache space for fmgr lookup info, if not done yet */
        if (relinfo->ri_TrigFunctions == NULL)
+       {
                relinfo->ri_TrigFunctions = (FmgrInfo *)
-                       palloc0(trigdesc->numtriggers * sizeof(FmgrInfo));
+                       palloc(trigdesc->numtriggers * sizeof(FmgrInfo));
+               MemSet(relinfo->ri_TrigFunctions, 0,
+                          trigdesc->numtriggers * sizeof(FmgrInfo));
+       }
 
        LocTriggerData.type = T_TriggerData;
        LocTriggerData.tg_event = TRIGGER_EVENT_DELETE | TRIGGER_EVENT_ROW | TRIGGER_EVENT_BEFORE;
@@ -1273,8 +1282,12 @@ ExecBRUpdateTriggers(EState *estate, ResultRelInfo *relinfo,
 
        /* Allocate cache space for fmgr lookup info, if not done yet */
        if (relinfo->ri_TrigFunctions == NULL)
+       {
                relinfo->ri_TrigFunctions = (FmgrInfo *)
-                       palloc0(trigdesc->numtriggers * sizeof(FmgrInfo));
+                       palloc(trigdesc->numtriggers * sizeof(FmgrInfo));
+               MemSet(relinfo->ri_TrigFunctions, 0,
+                          trigdesc->numtriggers * sizeof(FmgrInfo));
+       }
 
        LocTriggerData.type = T_TriggerData;
        LocTriggerData.tg_event = TRIGGER_EVENT_UPDATE | TRIGGER_EVENT_ROW | TRIGGER_EVENT_BEFORE;
@@ -1756,7 +1769,9 @@ deferredTriggerInvokeEvents(bool immediate_only)
                                         * Allocate space to cache fmgr lookup info for triggers.
                                         */
                                        finfo = (FmgrInfo *)
-                                               palloc0(trigdesc->numtriggers * sizeof(FmgrInfo));
+                                               palloc(trigdesc->numtriggers * sizeof(FmgrInfo));
+                                       MemSet(finfo, 0,
+                                                  trigdesc->numtriggers * sizeof(FmgrInfo));
                                }
 
                                DeferredTriggerExecute(event, i, rel, trigdesc, finfo,
index 32ec3d8504b01ea5108a66876b6d4063b62e529d..1591f74766d13030ba4f87408c49a711f27a3b8d 100644 (file)
@@ -31,7 +31,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/vacuumlazy.c,v 1.21 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/vacuumlazy.c,v 1.22 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -147,7 +147,8 @@ lazy_vacuum_rel(Relation onerel, VacuumStmt *vacstmt)
        vacuum_set_xid_limits(vacstmt, onerel->rd_rel->relisshared,
                                                  &OldestXmin, &FreezeLimit);
 
-       vacrelstats = (LVRelStats *) palloc0(sizeof(LVRelStats));
+       vacrelstats = (LVRelStats *) palloc(sizeof(LVRelStats));
+       MemSet(vacrelstats, 0, sizeof(LVRelStats));
 
        /* Open all indexes of the relation */
        vac_open_indexes(onerel, &nindexes, &Irel);
index f6edc3283a12dfb9cdbe118d6879effb3d1fddd8..d85e59fb0090917b7ef120be2f9e0b31774ec6e9 100644 (file)
@@ -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
                {
index eb9535f42189d5f2878cfc341f24620d458ab727..105784fda4f4dbe112c479f265df92eace62ba4c 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/executor/functions.c,v 1.58 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/executor/functions.c,v 1.59 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -121,7 +121,9 @@ init_execution_state(char *src, Oid *argOidVect, int nargs)
                        int                     i;
                        ParamListInfo paramLI;
 
-                       paramLI = (ParamListInfo) palloc0((nargs + 1) * sizeof(ParamListInfoData));
+                       paramLI = (ParamListInfo) palloc((nargs + 1) * sizeof(ParamListInfoData));
+
+                       MemSet(paramLI, 0, (nargs + 1) * sizeof(ParamListInfoData));
 
                        estate->es_param_list_info = paramLI;
 
@@ -183,7 +185,8 @@ init_sql_fcache(FmgrInfo *finfo)
 
        typeStruct = (Form_pg_type) GETSTRUCT(typeTuple);
 
-       fcache = (SQLFunctionCachePtr) palloc0(sizeof(SQLFunctionCache));
+       fcache = (SQLFunctionCachePtr) palloc(sizeof(SQLFunctionCache));
+       MemSet(fcache, 0, sizeof(SQLFunctionCache));
 
        /*
         * get the type length and by-value flag from the type tuple
index a36d078964af3d02612043ad871d2eaefc0773cf..63c5bc20b47304ff9d4cbd9d682d941d66f4a0d3 100644 (file)
@@ -45,7 +45,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/executor/nodeAgg.c,v 1.93 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/executor/nodeAgg.c,v 1.94 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -651,7 +651,8 @@ lookup_hash_entry(Agg *node, TupleTableSlot *slot)
        MemoryContextSwitchTo(aggstate->aggcontext);
        entrysize = sizeof(AggHashEntryData) +
                (aggstate->numaggs - 1) * sizeof(AggStatePerGroupData);
-       entry = (AggHashEntry) palloc0(entrysize);
+       entry = (AggHashEntry) palloc(entrysize);
+       MemSet(entry, 0, entrysize);
 
        entry->hashkey = hashkey;
        entry->firstTuple = heap_copytuple(tuple);
@@ -887,8 +888,9 @@ agg_retrieve_direct(Agg *node)
                                Datum      *dvalues;
                                char       *dnulls;
 
-                               dvalues = (Datum *) palloc0(sizeof(Datum) * tupType->natts);
+                               dvalues = (Datum *) palloc(sizeof(Datum) * tupType->natts);
                                dnulls = (char *) palloc(sizeof(char) * tupType->natts);
+                               MemSet(dvalues, 0, sizeof(Datum) * tupType->natts);
                                MemSet(dnulls, 'n', sizeof(char) * tupType->natts);
                                nullsTuple = heap_formtuple(tupType, dvalues, dnulls);
                                ExecStoreTuple(nullsTuple,
@@ -1168,10 +1170,13 @@ ExecInitAgg(Agg *node, EState *estate, Plan *parent)
         * allocate my private per-agg working storage
         */
        econtext = aggstate->csstate.cstate.cs_ExprContext;
-       econtext->ecxt_aggvalues = (Datum *) palloc0(sizeof(Datum) * numaggs);
-       econtext->ecxt_aggnulls = (bool *) palloc0(sizeof(bool) * numaggs);
+       econtext->ecxt_aggvalues = (Datum *) palloc(sizeof(Datum) * numaggs);
+       MemSet(econtext->ecxt_aggvalues, 0, sizeof(Datum) * numaggs);
+       econtext->ecxt_aggnulls = (bool *) palloc(sizeof(bool) * numaggs);
+       MemSet(econtext->ecxt_aggnulls, 0, sizeof(bool) * numaggs);
 
-       peragg = (AggStatePerAgg) palloc0(sizeof(AggStatePerAggData) * numaggs);
+       peragg = (AggStatePerAgg) palloc(sizeof(AggStatePerAggData) * numaggs);
+       MemSet(peragg, 0, sizeof(AggStatePerAggData) * numaggs);
        aggstate->peragg = peragg;
 
        if (node->aggstrategy == AGG_HASHED)
@@ -1183,7 +1188,8 @@ ExecInitAgg(Agg *node, EState *estate, Plan *parent)
        {
                AggStatePerGroup pergroup;
 
-               pergroup = (AggStatePerGroup) palloc0(sizeof(AggStatePerGroupData) * numaggs);
+               pergroup = (AggStatePerGroup) palloc(sizeof(AggStatePerGroupData) * numaggs);
+               MemSet(pergroup, 0, sizeof(AggStatePerGroupData) * numaggs);
                aggstate->pergroup = pergroup;
        }
 
index 49bec1d010f55d50e6ea8b2e061009e052acd7b0..970da155f76568ea3d502fafc426fb78de20b0d0 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/executor/nodeAppend.c,v 1.48 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/executor/nodeAppend.c,v 1.49 2002/11/11 03:02:18 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -166,7 +166,8 @@ ExecInitAppend(Append *node, EState *estate, Plan *parent)
        appendplans = node->appendplans;
        nplans = length(appendplans);
 
-       initialized = (bool *) palloc0(nplans * sizeof(bool));
+       initialized = (bool *) palloc(nplans * sizeof(bool));
+       MemSet(initialized, 0, nplans * sizeof(bool));
 
        /*
         * create new AppendState for our append node
index 9032a12aa790d4417439c2a14cb192639af4e98e..bed63e036193ed0ca881050c34a65e20292dd149 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/executor/nodeSort.c,v 1.38 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/executor/nodeSort.c,v 1.39 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -50,9 +50,11 @@ ExtractSortKeys(Sort *sortnode,
         */
        if (keycount <= 0)
                elog(ERROR, "ExtractSortKeys: keycount <= 0");
-       sortOps = (Oid *) palloc0(keycount * sizeof(Oid));
+       sortOps = (Oid *) palloc(keycount * sizeof(Oid));
+       MemSet(sortOps, 0, keycount * sizeof(Oid));
        *sortOperators = sortOps;
-       attNos = (AttrNumber *) palloc0(keycount * sizeof(AttrNumber));
+       attNos = (AttrNumber *) palloc(keycount * sizeof(AttrNumber));
+       MemSet(attNos, 0, keycount * sizeof(AttrNumber));
        *attNums = attNos;
 
        /*
index a8c0a5d5f38de5e8168e3852fb4102ed89040bc1..eed5a5a09016547a8cfff81695d9f5cea6b39681 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/executor/spi.c,v 1.76 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/executor/spi.c,v 1.77 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -783,8 +783,9 @@ SPI_cursor_open(char *name, void *plan, Datum *Values, char *Nulls)
        {
                ParamListInfo paramLI;
 
-               paramLI = (ParamListInfo) palloc0((spiplan->nargs + 1) *
+               paramLI = (ParamListInfo) palloc((spiplan->nargs + 1) *
                                                                                 sizeof(ParamListInfoData));
+               MemSet(paramLI, 0, (spiplan->nargs + 1) * sizeof(ParamListInfoData));
 
                eState->es_param_list_info = paramLI;
                for (k = 0; k < spiplan->nargs; paramLI++, k++)
@@ -1192,7 +1193,9 @@ _SPI_execute_plan(_SPI_plan *plan, Datum *Values, char *Nulls, int tcount)
                                        int                     k;
 
                                        paramLI = (ParamListInfo)
-                                               palloc0((nargs + 1) * sizeof(ParamListInfoData));
+                                               palloc((nargs + 1) * sizeof(ParamListInfoData));
+                                       MemSet(paramLI, 0,
+                                                  (nargs + 1) * sizeof(ParamListInfoData));
 
                                        state->es_param_list_info = paramLI;
                                        for (k = 0; k < plan->nargs; paramLI++, k++)
index 118d39507a0000db5be65d863df5459550211bf4..6ff95441348ca5c007d9b63f9719ea6ad4263c78 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/optimizer/path/allpaths.c,v 1.90 2002/11/10 07:25:13 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/optimizer/path/allpaths.c,v 1.91 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -460,7 +460,8 @@ make_one_rel_by_joins(Query *root, int levels_needed, List *initial_rels)
         * joinitems[j] is a list of all the j-item rels.  Initially we set
         * joinitems[1] to represent all the single-jointree-item relations.
         */
-       joinitems = (List **) palloc0((levels_needed + 1) * sizeof(List *));
+       joinitems = (List **) palloc((levels_needed + 1) * sizeof(List *));
+       MemSet(joinitems, 0, (levels_needed + 1) * sizeof(List *));
 
        joinitems[1] = initial_rels;
 
index 9746c16cf58e59e439363ae44ce6bb17233f5336..94eb54156cb1715b7957cc547297de45418e7c51 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.140 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.141 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1070,7 +1070,8 @@ gen_cross_product(InhPaths *arginh, int nargs)
        /* compute the cross product from right to left */
        for (;;)
        {
-               oneres = (Oid *) palloc0(FUNC_MAX_ARGS * sizeof(Oid));
+               oneres = (Oid *) palloc(FUNC_MAX_ARGS * sizeof(Oid));
+               MemSet(oneres, 0, FUNC_MAX_ARGS * sizeof(Oid));
 
                for (i = nargs - 1; i >= 0 && cur[i] > arginh[i].nsupers; i--)
                        continue;
index 85ff0650c1c0f1c70f9d4328f38d788903d9e2f6..31a7abbe2611dfd621be8cda0dc5ad2673a700ab 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/parser/parse_node.c,v 1.70 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/parser/parse_node.c,v 1.71 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -40,7 +40,8 @@ make_parsestate(ParseState *parentParseState)
 {
        ParseState *pstate;
 
-       pstate = palloc0(sizeof(ParseState));
+       pstate = palloc(sizeof(ParseState));
+       MemSet(pstate, 0, sizeof(ParseState));
 
        pstate->parentParseState = parentParseState;
        pstate->p_last_resno = 1;
index 7d043da0f987ae2587a3ac78460a192d5d4d13a8..7fa02fedd5c61538bea6044c41730fdb30dc3ff2 100644 (file)
@@ -37,7 +37,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.291 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.292 2002/11/11 03:02:19 momjian Exp $
  *
  * NOTES
  *
@@ -1092,8 +1092,10 @@ ProcessStartupPacket(Port *port, bool SSLdone)
        if (len < sizeof(ProtocolVersion) || len > sizeof(StartupPacket))
                elog(FATAL, "invalid length of startup packet");
 
+       buf = palloc(sizeof(StartupPacket));
+
        /* Ensure we see zeroes for any bytes not sent */
-       buf = palloc0(sizeof(StartupPacket));
+       MemSet(buf, 0, sizeof(StartupPacket));
 
        if (pq_getbytes(buf, len) == EOF)
        {
index 2275cc8cb245047bf9aafbb3cbc8f3e494492f64..120df241099b7a86c1589a9bdf184840efb5a88b 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.81 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.82 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -248,7 +248,8 @@ makeacl(int n)
        if (n < 0)
                elog(ERROR, "makeacl: invalid size: %d", n);
        size = ACL_N_SIZE(n);
-       new_acl = (Acl *) palloc0(size);
+       new_acl = (Acl *) palloc(size);
+       MemSet((char *) new_acl, 0, size);
        new_acl->size = size;
        new_acl->ndim = 1;
        new_acl->flags = 0;
index 3340449b1a2b49809aa67d0562da0c04b0d3cdcd..df75d660f56f2cf4414511814ccfab84d2a8ad29 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.83 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.84 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -235,7 +235,8 @@ array_in(PG_FUNCTION_ARGS)
        if (nitems == 0)
        {
                /* Return empty array */
-               retval = (ArrayType *) palloc0(sizeof(ArrayType));
+               retval = (ArrayType *) palloc(sizeof(ArrayType));
+               MemSet(retval, 0, sizeof(ArrayType));
                retval->size = sizeof(ArrayType);
                retval->elemtype = element_type;
                PG_RETURN_ARRAYTYPE_P(retval);
@@ -248,7 +249,8 @@ array_in(PG_FUNCTION_ARGS)
                                                   typmod, typdelim, typlen, typbyval, typalign,
                                                   &nbytes);
        nbytes += ARR_OVERHEAD(ndim);
-       retval = (ArrayType *) palloc0(nbytes);
+       retval = (ArrayType *) palloc(nbytes);
+       MemSet(retval, 0, nbytes);
        retval->size = nbytes;
        retval->ndim = ndim;
        retval->elemtype = element_type;
@@ -395,7 +397,8 @@ ReadArrayStr(char *arrayStr,
                                prod[MAXDIM];
 
        mda_get_prod(ndim, dim, prod);
-       values = (Datum *) palloc0(nitems * sizeof(Datum));
+       values = (Datum *) palloc(nitems * sizeof(Datum));
+       MemSet(values, 0, nitems * sizeof(Datum));
        MemSet(indx, 0, sizeof(indx));
 
        /* read array enclosed within {} */
@@ -511,7 +514,10 @@ ReadArrayStr(char *arrayStr,
                if (!typbyval)
                        for (i = 0; i < nitems; i++)
                                if (values[i] == (Datum) 0)
-                                       values[i] = PointerGetDatum(palloc0(typlen));
+                               {
+                                       values[i] = PointerGetDatum(palloc(typlen));
+                                       MemSet(DatumGetPointer(values[i]), 0, typlen);
+                               }
        }
        else
        {
@@ -1587,7 +1593,8 @@ array_map(FunctionCallInfo fcinfo, Oid inpType, Oid retType)
 
        /* Allocate and initialize the result array */
        nbytes += ARR_OVERHEAD(ndim);
-       result = (ArrayType *) palloc0(nbytes);
+       result = (ArrayType *) palloc(nbytes);
+       MemSet(result, 0, nbytes);
 
        result->size = nbytes;
        result->ndim = ndim;
index f39cfab1b112a5c01084e59ac04b9c59a66ec632..a0ddd37723894421f4ce2775d778e1451cb88924 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/adt/geo_ops.c,v 1.69 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/adt/geo_ops.c,v 1.70 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -3130,8 +3130,9 @@ poly_in(PG_FUNCTION_ARGS)
                elog(ERROR, "Bad polygon external representation '%s'", str);
 
        size = offsetof(POLYGON, p[0]) +sizeof(poly->p[0]) * npts;
-       poly = (POLYGON *) palloc0(size);       /* zero any holes */
+       poly = (POLYGON *) palloc(size);
 
+       MemSet((char *) poly, 0, size);         /* zero any holes */
        poly->size = size;
        poly->npts = npts;
 
@@ -4451,7 +4452,9 @@ circle_poly(PG_FUNCTION_ARGS)
        if (base_size / npts != sizeof(poly->p[0]) || size <= base_size)
                elog(ERROR, "too many points requested");
 
-       poly = (POLYGON *) palloc0(size);       /* zero any holes */
+       poly = (POLYGON *) palloc(size);
+
+       MemSet(poly, 0, size);          /* zero any holes */
        poly->size = size;
        poly->npts = npts;
 
index 429bac59e99329c52f167cc89c44177b2a4c0016..0985c6a459fe3eef102d5e22f68604f2f8246dda 100644 (file)
@@ -3,7 +3,7 @@
  *     is for IP V4 CIDR notation, but prepared for V6: just
  *     add the necessary bits where the comments indicate.
  *
- *     $Header: /cvsroot/pgsql/src/backend/utils/adt/network.c,v 1.36 2002/11/10 07:25:14 momjian Exp $
+ *     $Header: /cvsroot/pgsql/src/backend/utils/adt/network.c,v 1.37 2002/11/11 03:02:19 momjian Exp $
  *
  *     Jon Postel RIP 16 Oct 1998
  */
@@ -51,8 +51,9 @@ network_in(char *src, int type)
        int                     bits;
        inet       *dst;
 
+       dst = (inet *) palloc(VARHDRSZ + sizeof(inet_struct));
        /* make sure any unused bits in a CIDR value are zeroed */
-       dst = (inet *) palloc0(VARHDRSZ + sizeof(inet_struct));
+       MemSet(dst, 0, VARHDRSZ + sizeof(inet_struct));
 
        /* First, try for an IP V4 address: */
        ip_family(dst) = AF_INET;
@@ -493,8 +494,9 @@ network_broadcast(PG_FUNCTION_ARGS)
        inet       *ip = PG_GETARG_INET_P(0);
        inet       *dst;
 
+       dst = (inet *) palloc(VARHDRSZ + sizeof(inet_struct));
        /* make sure any unused bits are zeroed */
-       dst = (inet *) palloc0(VARHDRSZ + sizeof(inet_struct));
+       MemSet(dst, 0, VARHDRSZ + sizeof(inet_struct));
 
        if (ip_family(ip) == AF_INET)
        {
@@ -532,8 +534,9 @@ network_network(PG_FUNCTION_ARGS)
        inet       *ip = PG_GETARG_INET_P(0);
        inet       *dst;
 
+       dst = (inet *) palloc(VARHDRSZ + sizeof(inet_struct));
        /* make sure any unused bits are zeroed */
-       dst = (inet *) palloc0(VARHDRSZ + sizeof(inet_struct));
+       MemSet(dst, 0, VARHDRSZ + sizeof(inet_struct));
 
        if (ip_family(ip) == AF_INET)
        {
@@ -571,8 +574,9 @@ network_netmask(PG_FUNCTION_ARGS)
        inet       *ip = PG_GETARG_INET_P(0);
        inet       *dst;
 
+       dst = (inet *) palloc(VARHDRSZ + sizeof(inet_struct));
        /* make sure any unused bits are zeroed */
-       dst = (inet *) palloc0(VARHDRSZ + sizeof(inet_struct));
+       MemSet(dst, 0, VARHDRSZ + sizeof(inet_struct));
 
        if (ip_family(ip) == AF_INET)
        {
index 7d98491d779c0423c445ad6d64e308b4f5fb5066..69b8e226be4a165494e5e4a7e33df2a62f4190f2 100644 (file)
@@ -9,7 +9,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/adt/varbit.c,v 1.27 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/adt/varbit.c,v 1.28 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -107,8 +107,9 @@ bit_in(PG_FUNCTION_ARGS)
                         bitlen, atttypmod);
 
        len = VARBITTOTALLEN(atttypmod);
+       result = (VarBit *) palloc(len);
        /* set to 0 so that *r is always initialised and string is zero-padded */
-       result = (VarBit *) palloc0(len);
+       MemSet(result, 0, len);
        VARATT_SIZEP(result) = len;
        VARBITLEN(result) = atttypmod;
 
@@ -231,8 +232,9 @@ bit(PG_FUNCTION_ARGS)
                         VARBITLEN(arg), len);
 
        rlen = VARBITTOTALLEN(len);
+       result = (VarBit *) palloc(rlen);
        /* set to 0 so that string is zero-padded */
-       result = (VarBit *) palloc0(rlen);
+       MemSet(result, 0, rlen);
        VARATT_SIZEP(result) = rlen;
        VARBITLEN(result) = len;
 
@@ -314,8 +316,9 @@ varbit_in(PG_FUNCTION_ARGS)
                         atttypmod);
 
        len = VARBITTOTALLEN(bitlen);
+       result = (VarBit *) palloc(len);
        /* set to 0 so that *r is always initialised and string is zero-padded */
-       result = (VarBit *) palloc0(len);
+       MemSet(result, 0, len);
        VARATT_SIZEP(result) = len;
        VARBITLEN(result) = Min(bitlen, atttypmod);
 
index 1d10a103bdcf873f083d7327cb1aa96a3498cf97..ffae38015b6f8059c99f0b04b795f009b0313cf0 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/cache/catcache.c,v 1.100 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/cache/catcache.c,v 1.101 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -808,7 +808,8 @@ InitCatCache(int id,
         *
         * Note: we assume zeroing initializes the Dllist headers correctly
         */
-       cp = (CatCache *) palloc0(sizeof(CatCache) + NCCBUCKETS * sizeof(Dllist));
+       cp = (CatCache *) palloc(sizeof(CatCache) + NCCBUCKETS * sizeof(Dllist));
+       MemSet((char *) cp, 0, sizeof(CatCache) + NCCBUCKETS * sizeof(Dllist));
 
        /*
         * initialize the cache's relation information for the relation
index 28431b5c5cc383cd51cd62844b425b3007f60018..11bb211c808f956b6a81d84440697a8a682e42d0 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/cache/relcache.c,v 1.178 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/cache/relcache.c,v 1.179 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1348,9 +1348,13 @@ formrdesc(const char *relationName,
 
        /*
         * allocate new relation desc
+        */
+       relation = (Relation) palloc(sizeof(RelationData));
+
+       /*
         * clear all fields of reldesc
         */
-       relation = (Relation) palloc0(sizeof(RelationData));
+       MemSet((char *) relation, 0, sizeof(RelationData));
        relation->rd_targblock = InvalidBlockNumber;
 
        /* make sure relation is marked as having no open file yet */
@@ -1376,7 +1380,8 @@ formrdesc(const char *relationName,
         * get us launched.  RelationCacheInitializePhase2() will read the
         * real data from pg_class and replace what we've done here.
         */
-       relation->rd_rel = (Form_pg_class) palloc0(CLASS_TUPLE_SIZE);
+       relation->rd_rel = (Form_pg_class) palloc(CLASS_TUPLE_SIZE);
+       MemSet(relation->rd_rel, 0, CLASS_TUPLE_SIZE);
 
        namestrcpy(&relation->rd_rel->relname, relationName);
        relation->rd_rel->relnamespace = PG_CATALOG_NAMESPACE;
@@ -2049,7 +2054,8 @@ RelationBuildLocalRelation(const char *relname,
        /*
         * allocate a new relation descriptor and fill in basic state fields.
         */
-       rel = (Relation) palloc0(sizeof(RelationData));
+       rel = (Relation) palloc(sizeof(RelationData));
+       MemSet((char *) rel, 0, sizeof(RelationData));
 
        rel->rd_targblock = InvalidBlockNumber;
 
@@ -2087,7 +2093,8 @@ RelationBuildLocalRelation(const char *relname,
        /*
         * initialize relation tuple form (caller may add/override data later)
         */
-       rel->rd_rel = (Form_pg_class) palloc0(CLASS_TUPLE_SIZE);
+       rel->rd_rel = (Form_pg_class) palloc(CLASS_TUPLE_SIZE);
+       MemSet((char *) rel->rd_rel, 0, CLASS_TUPLE_SIZE);
 
        namestrcpy(&rel->rd_rel->relname, relname);
        rel->rd_rel->relnamespace = relnamespace;
index 30c83038609110a7383a9262bd5a1dd5c4e139b4..d27f74915189e2964aa83cd03bcd33de82595183 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/fmgr/fmgr.c,v 1.64 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/fmgr/fmgr.c,v 1.65 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1550,8 +1550,9 @@ Int64GetDatum(int64 X)
         * with zeroes in the unused bits.      This is needed so that, for
         * example, hash join of int8 will behave properly.
         */
-       int64      *retval = (int64 *) palloc0(Max(sizeof(int64), 8));
+       int64      *retval = (int64 *) palloc(Max(sizeof(int64), 8));
 
+       MemSet(retval, 0, Max(sizeof(int64), 8));
        *retval = X;
        return PointerGetDatum(retval);
 #endif   /* INT64_IS_BUSTED */
index 53b505fa8f0ac20de0e2f14aec8101b97d38a574..971a74768ba5869380dd978d8e3adff090bf0847 100644 (file)
@@ -78,7 +78,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/sort/tuplesort.c,v 1.30 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/sort/tuplesort.c,v 1.31 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -414,7 +414,9 @@ tuplesort_begin_common(bool randomAccess)
 {
        Tuplesortstate *state;
 
-       state = (Tuplesortstate *) palloc0(sizeof(Tuplesortstate));
+       state = (Tuplesortstate *) palloc(sizeof(Tuplesortstate));
+
+       MemSet((char *) state, 0, sizeof(Tuplesortstate));
 
        state->status = TSS_INITIAL;
        state->randomAccess = randomAccess;
@@ -457,9 +459,11 @@ tuplesort_begin_heap(TupleDesc tupDesc,
 
        state->tupDesc = tupDesc;
        state->nKeys = nkeys;
-       state->scanKeys = (ScanKey) palloc0(nkeys * sizeof(ScanKeyData));
+       state->scanKeys = (ScanKey) palloc(nkeys * sizeof(ScanKeyData));
+       MemSet(state->scanKeys, 0, nkeys * sizeof(ScanKeyData));
        state->sortFnKinds = (SortFunctionKind *)
-               palloc0(nkeys * sizeof(SortFunctionKind));
+               palloc(nkeys * sizeof(SortFunctionKind));
+       MemSet(state->sortFnKinds, 0, nkeys * sizeof(SortFunctionKind));
 
        for (i = 0; i < nkeys; i++)
        {
index 172ba62202a709e141ed5bf0745e2510a074bfe0..80181a681831e6c220b65468eb6c8432b9e524f9 100644 (file)
@@ -26,7 +26,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/sort/tuplestore.c,v 1.8 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/sort/tuplestore.c,v 1.9 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -197,7 +197,9 @@ tuplestore_begin_common(bool randomAccess, int maxKBytes)
 {
        Tuplestorestate *state;
 
-       state = (Tuplestorestate *) palloc0(sizeof(Tuplestorestate));
+       state = (Tuplestorestate *) palloc(sizeof(Tuplestorestate));
+
+       MemSet((char *) state, 0, sizeof(Tuplestorestate));
 
        state->status = TSS_INITIAL;
        state->randomAccess = randomAccess;
index 0bdc2ab32c557d75c3f06a462c6e0a571a9bab98..2dfdca4c0136e71f33723490ae56a9a4fcbbc96b 100644 (file)
@@ -12,7 +12,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: c.h,v 1.130 2002/10/24 03:11:05 momjian Exp $
+ * $Id: c.h,v 1.131 2002/11/11 03:02:19 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -586,8 +586,7 @@ typedef NameData *Name;
                int             _val = (val); \
                Size    _len = (len); \
 \
-               if ((((long) _start) & INT_ALIGN_MASK) == 0 && \
-                       (_len & INT_ALIGN_MASK) == 0 && \
+               if ((( ((long) _start) | _len) & INT_ALIGN_MASK) == 0 && \
                        _val == 0 && \
                        _len <= MEMSET_LOOP_LIMIT) \
                { \
index 2d90d60903c2d9e752dc45e1f5bb7404faf1c4cf..1ebf494f97d9956c4133ae88ffbd9c494903c85c 100644 (file)
@@ -3,7 +3,7 @@
  *                       procedural language
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_exec.c,v 1.67 2002/11/10 07:25:14 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_exec.c,v 1.68 2002/11/11 03:02:19 momjian Exp $
  *
  *       This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -1008,7 +1008,7 @@ exec_stmt_perform(PLpgSQL_execstate * estate, PLpgSQL_stmt_perform * stmt)
         */
        if (expr->plan == NULL)
                exec_prepare_plan(estate, expr);
-
+       
        rc = exec_run_select(estate, expr, 0, NULL);
        if (rc != SPI_OK_SELECT)
                elog(ERROR, "query \"%s\" didn't return data", expr->query);
@@ -1627,8 +1627,9 @@ exec_stmt_return_next(PLpgSQL_execstate * estate,
                if (natts != stmt->row->nfields)
                        elog(ERROR, "Wrong record type supplied in RETURN NEXT");
 
-               dvalues = (Datum *) palloc0(natts * sizeof(Datum));
+               dvalues = (Datum *) palloc(natts * sizeof(Datum));
                nulls = (char *) palloc(natts * sizeof(char));
+               MemSet(dvalues, 0, natts * sizeof(Datum));
                MemSet(nulls, 'n', natts);
 
                for (i = 0; i < natts; i++)
index 02012886072433d0a1bb3ae8525243f97838290d..99e6085bf231ed1be798cc97632756c032ea90ae 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Header: /cvsroot/pgsql/src/test/regress/regress.c,v 1.52 2002/11/10 07:25:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/test/regress/regress.c,v 1.53 2002/11/11 03:02:20 momjian Exp $
  */
 
 #include "postgres.h"
@@ -300,11 +300,12 @@ reverse_name(char *string)
        int                     len;
        char       *new_string;
 
-       if (!(new_string = palloc0(NAMEDATALEN)))
+       if (!(new_string = palloc(NAMEDATALEN)))
        {
                fprintf(stderr, "reverse_name: palloc failed\n");
                return NULL;
        }
+       MemSet(new_string, 0, NAMEDATALEN);
        for (i = 0; i < NAMEDATALEN && string[i]; ++i)
                ;
        if (i == NAMEDATALEN || !string[i])