| 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: | Whole Thread | Raw Message | 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() |