On Tue, Feb 18, 2020 at 11:33 AM Andres Freund <andres@anarazel.de> wrote:
>
> On 2020-02-18 11:20:17 +0530, Amit Kapila wrote:
> > Andres, any objections on proceeding with Kuntal's patch for
> > back-branches (10, 9.6 and 9.5)?
>
> Yes. In my past experiments that lead to *terrible* allocator
> performance due to fragmentation. Like, up to 90% of the time spent in
> aset.c. Try a workload with a number of overlapping transactions that
> have different tuple sizes.
>
I thought slab-cache would have addressed it. But, it is possible if
there are many-2 such overlapping transactions, then that might lead
to performance regression. OTOH, the current code also might lead to
worse performance for transactions with multiple subtransactions as
they would frequently need to malloc.
> I'm not even sure it's the right thing to do anything in the back
> branches to be honest. If somebody hits this badly they likely have done
> so before, and they at least have the choice to upgrade, but if we
> regress performance for more people...
I could see that for some cases the current code might give better
performance, but OTOH, consuming memory at a high rate for some other
cases is also not good either. But you are right that we can always
ask such users to upgrade (which again sometimes is painful for some
of the users), so maybe the right thing is to do nothing here. Anyone
else has any opinion on this?
--
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com