recovery_min_apply_delay vs. synchronous_commit

From: Bernd Helmle <bernd(dot)helmle(at)oopsware(dot)de>
To: pgsql-hackers(at)postgresql(dot)org
Subject: recovery_min_apply_delay vs. synchronous_commit
Date: 2016-09-16 20:34:12
Message-ID: 9AAA03C17ACEDE767AB745F3@eje.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Current PostgreSQL Documentation on recovery.conf has this about
recovery_min_apply_delay[1]:

---<---

This parameter is intended for use with streaming replication deployments;
however, if the parameter is specified it will be honored in all cases.
Synchronous replication is not affected by this setting because there is
not yet any setting to request synchronous apply of transaction commits.

--->---

If i understand correctly, this is not true anymore with 9.6, where
remote_apply will have exactly the behavior the paragraph above wants to
contradict: any transaction executed with synchronous_commit=remote_apply
will wait at least recovery_min_apply_delay to finish. Given that
synchronous_commit can be controlled by any user, this might be dangerous
if someone doesn't take care enough.

I think we need a doc patch for that at least, see attached patch against
master, but 9.6 should have a corrected one, too.

[1] <https://www.postgresql.org/docs/devel/static/standby-settings.html>

--
Mit freundlichen Grüßen

Bernd Helmle

Attachment Content-Type Size
recovery-config-doc.patch application/octet-stream 1.5 KB

Browse pgsql-hackers by date

  From Date Subject
Next Message Bernd Helmle 2016-09-16 20:45:01 recovery_min_apply-delay and remote_apply
Previous Message Alvaro Herrera 2016-09-16 20:28:36 Re: more parallel query documentation