From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: hyrax vs. RelationBuildPartitionDesc |
Date: | 2019-03-13 16:51:05 |
Message-ID: | CA+Tgmoabw8KW9rx6ThnUTR_ofJC8GwVaC+XMe7HkZvsG7J1rvA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Mar 13, 2019 at 12:42 PM Alvaro Herrera
<alvherre(at)2ndquadrant(dot)com> wrote:
> I remember going over this code's memory allocation strategy a bit to
> avoid the copy while not incurring potential leaks CacheMemoryContext;
> as I recall, my idea was to use two contexts, one of which is temporary
> and used for any potentially leaky callees, and destroyed at the end of
> the function, and the other contains the good stuff and is reparented to
> CacheMemoryContext at the end. So if you have any accidental leaks,
> they don't affect a long-lived context. You have to be mindful of not
> calling leaky code when you're using the permanent one.
Well, that assumes that the functions which allocate the good stuff do
not also leak, which seems a bit fragile.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | Magnus Hagander | 2019-03-13 16:51:59 | Re: Offline enabling/disabling of data checksums |
Previous Message | Tom Lane | 2019-03-13 16:50:55 | Re: Using the return value of strlcpy() and strlcat() |