On Tue, 2019-07-16 at 14:05 +0900, Michael Paquier wrote: > >> How about > >> Note that while WAL will be flushed with this setting, > >> <application>pg_receivewal</application> never applies it, so > >> <xref linkend="guc-synchronous-commit"/> must not be set to > >> <literal>remote_apply</literal> if > >> <application>pg_receivewal</application> > >> is the only synchronous standby. > > This is not true in all cases as since 9.6 it is possible to specify > multiple synchronous standbys. So if for example pg_receivewal and > another synchronous standby are set in s_s_names and that the number > of a FIRST (priority-based) or ANY (quorum set) is two, then the same > issue exists, but this documentation is incorrect. I think that we > should have a more extensive wording here, like "if pg_receivewal is > part of a quorum-based or priority-based set of synchronous standbys."
I think this would be overly complicated. The wording above seems to cover the priority-based base sufficiently in my opinion. Maybe a second sentence with more detail would be better: ... must not be set to <literal>remote_apply</literal> if <application>pg_receivewal</application> is the only synchronous standby. Similarly, if <application>pg_receivewal</application> is part of a quorum-based set of synchronous standbys, it won't count towards the quorum if <xref linkend="guc-synchronous-commit"/> is set to <literal>remote_apply</literal>. Yours, Laurenz Albe