Which process is actually doing the WAL writes/calls XLogFlush?

From: Daniel Westermann <daniel(dot)westermann(at)dbi-services(dot)com>
To: PostgreSQL General <pgsql-general(at)postgresql(dot)org>
Subject: Which process is actually doing the WAL writes/calls XLogFlush?
Date: 2017-06-23 12:50:22
Message-ID: 2044578208.7456.1498222222798.JavaMail.zimbra@dbi-services.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi all,

as I did not find the answer in the documentation: Which background process is actually doing the writes/flushes to the WAL? In the docs (https://www.postgresql.org/docs/10/static/wal-configuration.html) it is explained which internal functions are responsible for this: XLogInsertRecord and XLogFlush but who does call them, especially the flush? Is it the process for the user connection itself then which calls this after commit?

Initially I thought it is the job of the wal_writer but according to this blog post (http://www.cybertec.at/postgresql-writer-and-wal-writer-processes-explained/) this seems not to be true, right? Why do I need the wal_writer at all then when synchronous_commit is set to something else than off?

Thanks for your help
Daniel

Responses

Browse pgsql-general by date

  From Date Subject
Next Message PAWAN SHARMA 2017-06-23 13:03:56 Re: PostgreSQL Cookbook Testing
Previous Message Karsten Hilbert 2017-06-23 12:40:17 Re: PostgreSQL Cookbook Testing