aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFujii Masao <fujii@postgresql.org>2019-10-18 22:24:18 +0900
committerFujii Masao <fujii@postgresql.org>2019-10-18 22:25:42 +0900
commit03666dfa1817ef602ef982a766b983efd43c460f (patch)
treee2a4c495022acd38d59965eb3da8f1d38c268b47 /src
parent954b9c195999d4b891e1ece656e878f2c4f876ce (diff)
downloadpostgresql-03666dfa1817ef602ef982a766b983efd43c460f.tar.gz
postgresql-03666dfa1817ef602ef982a766b983efd43c460f.zip
Make crash recovery ignore recovery_min_apply_delay setting.
In v11 or before, this setting could not take effect in crash recovery because it's specified in recovery.conf and crash recovery always starts without recovery.conf. But commit 2dedf4d9a8 integrated recovery.conf into postgresql.conf and which unexpectedly allowed this setting to take effect even in crash recovery. This is definitely not good behavior. To fix the issue, this commit makes crash recovery always ignore recovery_min_apply_delay setting. Back-patch to v12 where the issue was added. Author: Fujii Masao Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/CAHGQGwEyD6HdZLfdWc+95g=VQFPR4zQL4n+yHxQgGEGjaSVheQ@mail.gmail.com Discussion: https://postgr.es/m/e445616d-023e-a268-8aa1-67b8b335340c@pgmasters.net
Diffstat (limited to 'src')
-rw-r--r--src/backend/access/transam/xlog.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index a85aa835d38..861297bda5e 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -5977,6 +5977,10 @@ recoveryApplyDelay(XLogReaderState *record)
if (!reachedConsistency)
return false;
+ /* nothing to do if crash recovery is requested */
+ if (!ArchiveRecoveryRequested)
+ return false;
+
/*
* Is it a COMMIT record?
*