Re: pgsql: Add new replication mode synchronous_commit = 'remote_apply'.
От | Michael Paquier |
---|---|
Тема | Re: pgsql: Add new replication mode synchronous_commit = 'remote_apply'. |
Дата | |
Msg-id | CAB7nPqSXJQaDinjHE_Za8Odxr0TZJpetarDJM2mvnHLsoU2_Pg@mail.gmail.com обсуждение исходный текст |
Ответ на | pgsql: Add new replication mode synchronous_commit = 'remote_apply'. (Robert Haas <rhaas@postgresql.org>) |
Ответы |
Re: pgsql: Add new replication mode synchronous_commit = 'remote_apply'.
|
Список | pgsql-committers |
On Wed, Mar 30, 2016 at 10:31 AM, Robert Haas <rhaas@postgresql.org> wrote: > Add new replication mode synchronous_commit = 'remote_apply'. > > In this mode, the master waits for the transaction to be applied on > the remote side, not just written to disk. That means that you can > count on a transaction started on the standby to see all commits > previously acknowledged by the master. > > To make this work, the standby sends a reply after replaying each > commit record generated with synchronous_commit >= 'remote_apply'. > This introduces a small inefficiency: the extra replies will be sent > even by standbys that aren't the current synchronous standby. But > previously-existing synchronous_commit levels make no attempt at all > to optimize which replies are sent based on what the primary cares > about, so this is no worse, and at least avoids any extra replies for > people not using the feature at all. > > Thomas Munro, reviewed by Michael Paquier and by me. Some additional > tweaks by me. The commit message does not directly mention that the spec of walrcv_receive has been changed in a backward-incompatible way so as the wait control can be done with a latch directly in walreceiver.c and not in libpqwalreceiver.c. That's not worth a mention in the release notes as this is really low-level and compilation on any code using this hook would simply fail on 9.6, so I am just mentioning it for the sake of the archives. -- Michael
В списке pgsql-committers по дате отправления: