pgsql: Don't delay replication for less than recovery_min_apply_delay's - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: Don't delay replication for less than recovery_min_apply_delay's
Date
Msg-id E1Ya4wq-0004DK-AA@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Don't delay replication for less than recovery_min_apply_delay's resolution.

Recovery delays are implemented by waiting on a latch, and latches take
milliseconds as a parameter. The required amount of waiting was computed
using microsecond resolution though and the wait loop's abort condition
was checking the delay in microseconds as well.  This could lead to
short spurts of busy looping when the overall wait time was below a
millisecond, but above 0 microseconds.

Instead just formulate the wait loop's abort condition in millisecond
granularity as well. Given that that's recovery_min_apply_delay
resolution, it seems harmless to not wait for less than a millisecond.

Backpatch to 9.4 where recovery_min_apply_delay was introduced.

Discussion: 20150323141819.GH26995@alap3.anarazel.de

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/87cec51d3ad1107f6f224ed7d773e70c8896e4c0

Modified Files
--------------
src/backend/access/transam/xlog.c |    3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)


pgsql-committers by date:

Previous
From: Andres Freund
Date:
Subject: pgsql: Fix copy & paste error in 4f1b890b137.
Next
From: Andres Freund
Date:
Subject: pgsql: Don't delay replication for less than recovery_min_apply_delay's