Re: What does "[backends] should seldom or never need to wait for a write to occur" mean?

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: chris+postgresql(at)qwirx(dot)com, Pg Docs <pgsql-docs(at)lists(dot)postgresql(dot)org>
Subject: Re: What does "[backends] should seldom or never need to wait for a write to occur" mean?
Date: 2020-11-01 20:59:49
Message-ID: CA+hUKGJG-4huRapjPL7kBXAd+iBW5i09WKgWOFF6E31z_aHkmQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

On Fri, Oct 30, 2020 at 11:24 AM PG Doc comments form
<noreply(at)postgresql(dot)org> wrote:
> The following documentation comment has been logged on the website:
>
> Page: https://www.postgresql.org/docs/13/runtime-config-resource.html
> Description:
>
> https://www.postgresql.org/docs/13/runtime-config-resource.html#RUNTIME-CONFIG-RESOURCE-BACKGROUND-WRITER
>
> says:
>
> "There is a separate server process called the background writer, whose
> function is to issue writes of “dirty” (new or modified) shared buffers. It
> writes shared buffers so server processes handling user queries seldom or
> never need to wait for a write to occur."
>
> It's not clear what "wait for a write to occur" means: a write() syscall or
> an fsync() syscall?

It means pwrite(). That could block if your kernel cache is swamped,
but hopefully it just copies the data into the kernel and returns.
There is an fsync() call, but it's usually queued up for handling by
the checkpointer process some time later.

In response to

Responses

Browse pgsql-docs by date

  From Date Subject
Next Message Erik Rijkers 2020-11-02 06:15:28 Re: Additional Chapter for Tutorial
Previous Message Jürgen Purtz 2020-11-01 15:38:43 Re: Additional Chapter for Tutorial