From: | Vladimir Mihailenco <vladimir(dot)webdev(at)gmail(dot)com> |
---|---|
To: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: shared_buffers smaller than max_wal_size |
Date: | 2017-09-25 09:10:32 |
Message-ID: | CAGzYotdpZxiS1YZ_9tvfMvtiqc6adn63i9=neH69Qbdpzs7QRw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Thanks again - for some reason I thought that each page should be fsynced
separately...
I am running ZFS and going to try following config on 32gb server:
shared_buffers = 512mb (previously was 6gb)
max_wal_size = 8gb
zfs_arc_max = 24gb
i.e. run with minimal shared buffers and do all the caching in ZFS. As I
understand it now such config can provide better results since data will be
cached once in ZFS.
On Sun, Sep 24, 2017 at 8:59 PM, Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>
wrote:
> On 09/24/2017 11:03 AM, Vladimir Mihailenco wrote:
> > Thanks for your response. Ss I understand it now the difference is
> > that checkpoints are synchronous but dirty pages eviction from shared
> > buffers are asynchronous, correct? How then Postgres ensures that OS
> > writes data to the disk so WAL can be deleted?
> >
>
> The last step in a checkpoin is fsync() on the files. Without that, the
> checkpoint is considered incomplete and the database won't rely on it.
>
>
> regards
>
> --
> Tomas Vondra http://www.2ndQuadrant.com
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
>
From | Date | Subject | |
---|---|---|---|
Next Message | John Britto | 2017-09-25 13:05:33 | WAL Archive command. |
Previous Message | hvjunk | 2017-09-25 08:34:54 | Re: "alter table...if exists... add bigserial "still adds extra sequence |