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