| From: | Peter Geoghegan <pg(at)bowt(dot)ie> | 
|---|---|
| To: | Feike Steenbergen <feikesteenbergen(at)gmail(dot)com> | 
| Cc: | PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: Skip index cleanup if autovacuum did not do any work | 
| Date: | 2017-11-28 21:48:53 | 
| Message-ID: | CAH2-WzkqOO7GGPRrmL6jKYjznCqYwhR-V5K=JMMQNfSfbb+1UQ@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On Tue, Nov 28, 2017 at 1:36 PM, Feike Steenbergen
<feikesteenbergen(at)gmail(dot)com> wrote:
> On a server with a very frequent xid wraparound I can see that the
> anti-wraparound vacuum is finished very quickly with the heap, yet it still
> scans all the indexes, which causes it to still have to read a lot of data,
> which takes a considerable amount of time.
>
> I dove into the code a bit and as far as I can tell, all the time spent for
> doing this is is in lazy_cleanup_index.
>
> For the very specific use case of all-frozen, basically read-only tables,
> would it be ok to skip the lazy_cleanup_index call? As we are sure we did
> not touch the heap or the index, I'd say a cleanup may not be necessary.
There is a patch in the ongoing CF to do this:
https://commitfest.postgresql.org/15/952/
It's a lot harder to do this correctly than it first appears.
-- 
Peter Geoghegan
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Feike Steenbergen | 2017-11-28 21:54:32 | Re: Skip index cleanup if autovacuum did not do any work | 
| Previous Message | Robert Haas | 2017-11-28 21:44:55 | Re: [HACKERS] Assertion failure when the non-exclusive pg_stop_backup aborted. |