From: | Andrey Borodin <x4mmm(at)yandex-team(dot)ru> |
---|---|
To: | Peter Geoghegan <pg(at)bowt(dot)ie> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Deleting older versions in unique indexes to avoid page splits |
Date: | 2020-10-12 10:47:21 |
Message-ID: | D5C83860-DD1E-45F3-9A8E-139F0E8E9030@yandex-team.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> 8 окт. 2020 г., в 04:48, Peter Geoghegan <pg(at)bowt(dot)ie> написал(а):
>
> On Tue, Jun 30, 2020 at 5:03 PM Peter Geoghegan <pg(at)bowt(dot)ie> wrote:
>> Attached is a POC patch that teaches nbtree to delete old duplicate
>> versions from unique indexes. The optimization targets non-HOT
>> duplicate version bloat. Although the patch is rather rough, it
>> nevertheless manages to more or less eliminate a whole class of index
>> bloat: Unique index bloat from non-HOT updates in workloads where no
>> transaction lasts for more than a few seconds.
>
> I'm slightly surprised that this thread didn't generate more interest
> back in June.
The idea looks very interesting.
It resembles GiST microvacuum: GiST tries to vacuum single page before split.
I'm curious how cost of page deduplication is compared to cost of page split? Should we do deduplication of page will still remain 99% full?
Best regards, Andrey Borodin.
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Kapila | 2020-10-12 10:49:01 | Re: [Patch] Optimize dropping of relation buffers using dlist |
Previous Message | Hamid Akhtar | 2020-10-12 10:46:39 | Re: Improved Cost Calculation for IndexOnlyScan |