From 7fc75517df6b8f70c57b95e879fd9696935c22fd Mon Sep 17 00:00:00 2001 From: Jan Wieck Date: Mon, 1 Feb 1999 20:25:55 +0000 Subject: [PATCH] Fixed growing of backend due to not pfree()'d data on COPY FROM Fixed growing of backend if BEFORE DELETE trigger returns heap tuple different from trigtuple. Jan --- src/backend/commands/copy.c | 3 +-- src/backend/commands/trigger.c | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index 3126e82dfc3..e9f4e65fdec 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -6,7 +6,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.68 1999/01/23 22:27:26 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.69 1999/02/01 20:25:54 wieck Exp $ * *------------------------------------------------------------------------- */ @@ -651,7 +651,6 @@ CopyFrom(Relation rel, bool binary, bool oids, FILE *fp, char *delim) lineno = 0; while (!done) { - values = (Datum *) palloc(sizeof(Datum) * attr_count); if (!binary) { #ifdef COPY_PATCH diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index aac9f2599f5..20a542eee5b 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -684,6 +684,8 @@ ExecBRDeleteTriggers(EState *estate, ItemPointer tupleid) newtuple = ExecCallTriggerFunc(trigger[i]); if (newtuple == NULL) break; + if (newtuple != trigtuple) + pfree(newtuple); } CurrentTriggerData = NULL; pfree(SaveTriggerData);