|From:||Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>|
|To:||Andres Freund <andres(at)anarazel(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>|
|Cc:||Petr Jelinek <petr(dot)jelinek(at)2ndquadrant(dot)com>, Petr Jelinek <petr(at)2ndquadrant(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, John Gorman <johngorman2(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>|
|Subject:||Re: PATCH: two slab-like memory allocators|
|Views:||Raw Message | Whole Thread | Download mbox|
On 03/01/2017 05:29 AM, Andres Freund wrote:
> On 2017-02-28 20:18:35 -0800, Andres Freund wrote:
>> - Andres, hoping the buildfarm turns greener
> Oh well, that didn't work. Investigating.
Attaches is the last part of the patch series, rebased to current master
and adopting the new chunk header approach. Unlike Slab, this context
needs the whole AllocSet header (size, requested_size), and also the
block pointer, so no padding seems to be needed.
I've tested this on x86-64 and amrv7l, and the test_decoding test suite
passes on both.
FWIW, I'm still not entirely happy with the name "Generation". I agree
with Andres that it's perhaps a bit too generic, but more importantly
the name might actually be a bit obsolete. There used to be generations
of chunks, but that's gone. Now it simply does not reuse the chunks at
all, and frees the blocks when they get empty.
It's not entirely FIFO though, because the transactions interleave, so
later blocks may be released first. But the "allocated close, freed
close" is still there. So perhaps something like "TemporalSet" or
something like that would be a better name?
Man, naming things is hard ...
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
|Next Message||Julien Rouhaud||2017-03-02 22:39:05||Re: [PATCH] SortSupport for macaddr type|
|Previous Message||Alvaro Herrera||2017-03-02 21:35:44||Re: patch: function xmltable|