From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | Joe Conway <mail(at)joeconway(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Hackers (PostgreSQL)" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: VALUES clause memory optimization |
Date: | 2006-08-26 03:35:40 |
Message-ID: | 200608260335.k7Q3ZeJ04955@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-docs pgsql-hackers pgsql-patches |
Has this been addressed?
---------------------------------------------------------------------------
Joe Conway wrote:
> Tom Lane wrote:
> > The reason we could safely list_free inside transformInsertRow is that
> > we know all its callers have just built the passed-in list and so there
> > are no other pointers to it. That doesn't apply in the general case of
> > grammar output.
>
> What about for the specific case of an InsertStmt? It seems that we
> could at least get away with freeing the raw-expression list in that case.
>
> In terms of freeing an entire arbitrary node, could we create a
> backend/nodes/freefuncs.c file that does a recursive freeObject()
> similar to the way copyObject() does in backend/nodes/copyfuncs.c?
>
> > My advice is to get that low-hanging fruit
> > in transformInsertRow and leave the other ideas for 8.3.
>
> OK. This should be safe also, correct?
>
> Thanks,
>
> Joe
>
> 8<----------------------------------------
> diff -c -r1.341 analyze.c
> *** src/backend/parser/analyze.c 2 Aug 2006 01:59:46 -0000 1.341
> --- src/backend/parser/analyze.c 2 Aug 2006 05:13:20 -0000
> ***************
> *** 2191,2196 ****
> --- 2196,2202 ----
> for (i = 0; i < sublist_length; i++)
> {
> coltypes[i] = select_common_type(coltype_lists[i], "VALUES");
> + list_free(coltype_lists[i]);
> }
>
> newExprsLists = NIL;
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq
--
Bruce Momjian bruce(at)momjian(dot)us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
From | Date | Subject | |
---|---|---|---|
Next Message | Magnus Hagander | 2006-08-26 05:19:38 | Re: New XML section for documentation |
Previous Message | Bruce Momjian | 2006-08-26 01:15:40 | Re: [HACKERS] New XML section for documentation |
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2006-08-26 03:43:22 | Re: pgcrypto deprecated functions? |
Previous Message | Bruce Momjian | 2006-08-26 03:29:47 | Re: Adding fulldisjunctions to the contrib |
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2006-08-26 03:44:52 | Re: IDENTITY/GENERATED columns |
Previous Message | Bruce Momjian | 2006-08-26 03:29:47 | Re: Adding fulldisjunctions to the contrib |