https://www.postgresql.org/docs/current/static/standby-settings.html
The delay occurs only on WAL records for transaction commits. Other records are replayed as quickly as possible, which is not a problem because MVCC visibility rules ensure their effects are not visible until the corresponding commit record is applied.
I thought while streaming replication xlog is replayed on slave. Local transactions are not replayed. Remote statements that skip WAL (Eg create table nologging
) are not replayed on slave. Now I'm confused - what are those other records that are replayed not waiting for recovery_min_apply_delay
?..
recovery_min_apply_delay
expires for that transaction?