Re: Handing off SLRU fsyncs to the checkpointer

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Handing off SLRU fsyncs to the checkpointer
Date: 2020-08-13 03:42:06
Message-ID: CA+hUKGL8PK-SXWCHgJw-cSrSjgESethAkCn=tGYq4MDoRH38bA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Aug 12, 2020 at 6:06 PM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:
> [patch]

Bitrot, rebased, no changes.

> Yeah, the combined effect of these two patches is better than I
> expected. To be clear though, I was only measuring the time between
> the "redo starts at ..." and "redo done at ..." messages, since I've
> been staring at the main recovery code, but there are also some more
> fsyncs before (SyncDataDirectory()) and after (RemoveOldXlogFiles())
> that are unaffected. I think it's probably possible to do something
> about those too, but that's another topic.

... and of course the end-of-recovery checkpoint; in my tests this
wasn't materially changed since there isn't actually very much CLOG,
it's just that we avoided syncing it block at a time and getting
rescheduled. FWIW I put a very simple test here:
https://github.com/macdice/redo-bench, YMMV.

Attachment Content-Type Size
v2-0001-Defer-flushing-of-SLRU-files.patch text/x-patch 16.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Noah Misch 2020-08-13 03:53:08 Re: run pgindent on a regular basis / scripted manner
Previous Message tsunakawa.takay@fujitsu.com 2020-08-13 03:26:33 Autonomous database is coming to Postgres?